Regaining DMA capability of /dev/scdX drive

Slim Joe slimjoe2k8 at gmail.com
Tue Oct 7 06:42:08 UTC 2008


Is there a way to set the DMA on a drive that uses IDE-SCSI
emulation (/dev/scdX)?

Whenever I use cdparanoia to rip a physically bad audio CD
(e.g. with visible scratches), my CD/DVD drive invariably
loses its DMA functionality. This is obvious from the slow
reading of any later disk (data or video) placed in the
drive. The system as a whole also becomes less responsive,
a behavior which stops when I eject the data or video DVD
from the drive.

The device in question is a PATA DVD-ROM reader and
CD writer combo drive that maps to /dev/scd0 via SCSI
emulation.

I have tried various software hacks, but none seem to
work. Only a reboot fixes the problem! The "hdparm" program
appears unable to deal with devices other than those that
the Linux recognizes as /dev/hd*.

hdparm -d1 /dev/scd0

Nor does the "echo > proc" trick work since there is no
scd0 equivalent of /proc/ide/*/settings!

echo "using_dma:0" > /proc/ide/hdX/settings

There is of course the alternate program "sdparm" but I
simply don't know which options to pass to it to re-enable
DMA on /dev/scd0 (if that is possible with this tool).




More information about the ubuntu-users mailing list