On Wed, 15 Mar 2006, Carlos E. R.
Umm! What if I don't want to set -X (xfermode) to anything at all? The -X parameter is implicit. I tried
DEVICES_FORCE_IDE_DMA="/dev/hdd:-c1:-m16:-u1 "
and it says:
/dev/hdd: setting 32-bit IO_support flag to 1 setting multcount to 16 setting unmaskirq to 1 (on) setting using_dma to 1 (on) setting xfermode to 0 (default PIO mode) <=== multcount = 16 (on) IO_support = 1 (32-bit) unmaskirq = 1 (on) using_dma = 1 (on)
Looking at the script, it assumes that the first option will be a numerical mode number, but doesn't actually check this is true. I think that there should be a minor change to the script just to counter this. Something like this should do: # Set DMA mode by hdparm utility if [ -z "$MODE" ] ; then echo "Missing DMA mode for device $DEVICE" rc_failed elif [ $MODE = "off" ] ; then $HDPARM -d 0 "$DEVICE" || rc_failed elif [ $MODE = "on" ] ; then $HDPARM -d 1 "$DEVICE" || rc_failed else # if $MODE is non-numeric, $(($MODE+0)) will be return "0" which means # the test is returns true and the first command is executed, otherwise # the second command is executed. if [ $(($MODE+0)) -eq 0 ] ; then $HDPARM -d 1 "$MODE" ${OPTIONS:+$OPTIONS} "$DEVICE" || rc_failed else $HDPARM -d 1 -X "$MODE" ${OPTIONS:+$OPTIONS} "$DEVICE" || rc_failed fi fi Regards, David Bolt -- Member of Team Acorn checking nodes at 50 Mnodes/s: http://www.distributed.net/ AMD1800 1Gb WinXP/SUSE 9.3 | AMD2400 256Mb SuSE 9.0 | A3010 4Mb RISCOS 3.11 AMD2400(32) 768Mb SUSE 10.0 | RPC600 129Mb RISCOS 3.6 | Falcon 14Mb TOS 4.02 AMD2600(64) 512Mb SUSE 10.0 | A4000 4Mb RISCOS 3.11 | STE 4Mb TOS 1.62