DMA on /dev/hda but not on /dev/dvd
I am trying to enable DMA mode on my dvd-rom to get enough speed to actually play a dvd. My drive supports DMA, so does the controller/motherboard, but I can get it to work. My HD is already running in DMA mode (set at startup), so I can't understand why the dvd doesn't work.
# hdparm -d1 /dev/dvd <-- As root, of course /dev/dvd: setting using_dma to 1 (on) HDIO_SET_DMA failed: Operation not permitted using_dma = 0 (off) # hdparm -i /dev/dvd /dev/dvd: Model=HITACHI DVD-ROM GD-7500, FwRev=0005, SerialNo= Config={ Fixed Removeable DTR<=5Mbs DTR>10Mbs nonMagnetic } RawCHS=0/0/0, TrkSize=0, SectSize=0, ECCbytes=0 BuffType=unknown, BuffSize=0kB, MaxMultSect=0 (maybe): CurCHS=0/0/0, CurSects=0, LBA=yes, LBAsects=0 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio1 pio2 pio3 pio4 DMA modes: sdma0 sdma1 sdma2 mdma0 mdma1 *mdma2 UDMA modes: udma0 udma1 udma2 AdvancedPM=no # hdparm -i /dev/hda /dev/hda: Model=MAXTOR 4K040H2, FwRev=A08.1500, SerialNo=572121417537 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs } RawCHS=16383/16/63, TrkSize=32256, SectSize=21298, ECCbytes=4 BuffType=DualPortCache, BuffSize=2000kB, MaxMultSect=16, MultSect=16 CurCHS=4047/16/255, CurSects=16511760, LBA=yes, LBAsects=78198750 IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120} PIO modes: pio0 pio1 pio2 pio3 pio4 DMA modes: mdma0 mdma1 mdma2 UDMA modes: udma0 udma1 udma2 AdvancedPM=no WriteCache=enabled Drive conforms to: ATA/ATAPI-5 T13 1321D revision 1: 1 2 3 4 5 The motherboard is SiS, I don't know the exact details (dmesg says omething about SIS5513, SIS730 ATA 100 controller) Thanks for any help Jeremy |
First off, try finding where /dev/dvd is pointing to:
ls -l /dev/dvd Then, taking the actual device, try there: hdparm -d1 /dev/hdX If your device is using scsi emulation, determine which standard ide block device it was before emulation occured: hda = Primary Master hdb = Secondary Master hdc = Primary Slave hdd = Secondary Slave Also, check the man page, it mentions using the -X option with -d option to ensure it uses the correct dma. So hdparm -d1 -X udma2 /dev/hdX might be what you are looking for. Cool |
Using hdparm -X option didn't help, still same result:
(/dev/dvd is linked to /dev/hdb, btw) # hdparm -d1 -X udma2 /dev/hdb /dev/hdb: setting using_dma to 1 (on) HDIO_SET_DMA failed: Operation not permitted setting xfermode to 66 (UltraDMA mode2) using_dma = 0 (off) Same result for any of the other DMA modes (sdma0, mdma2) Thanks for the suggestion, though... |
Do a search of the forums, I just noticed you are using RedHat and I recall there is a specific problem with enabling DMA on cdrom/dvdroms with RedHat, there's a setting you have to enter somewhere (I don't remember).
|
Thanks for the suggestion. I had no idea this problem was specific to rh-8.0. Here's what I found:
--------------------------------------------------------------------- I had the same problem. Here's the solution from Red Hat's web site: NOTE: As with the 8.0 release, IDE DMA on CD-ROM drives is disabled by default. If you are sure that your CD-ROM drive is capable of IDE DMA, place the following line in the /etc/modules.conf file: options ide-cd dma=1 I did it and now DVD is smooth as silk. ----------------------------------------------------------------------- I did the same thing, works perfectly |
All times are GMT -5. The time now is 10:34 AM. |