[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: How to turn on/off DMA



Doncho N. Gunchev wrote:
What was not clear in my question, I asked how do I do turn DMA on/off with the new kernels, not why I should not do this? Is there a reason to keep this secret?
I don't know the exact reason; but its as simple as "there is no need to" (libata never allowed this; so it was always the case for sata drives)
Here's the info for my DVD-Writer, it has DMA off in FC6 and I'm turning it on in rc.local to get it working faster.
which is a bug, please fill one (kernel)...
I also have to 'killall hald-addon-storage' (or more specificly, the one that monitors my DVD) or the machine (laptop) will die in a few hours (does not matter if I have DMA on, off or if I try to play with /usr/share/hal/fdi/policy/10osvendor/*.fdi.
also a bug fill it against hal
Haven't seen it locking for this reason with F7t4 yet.
--- Fedora Core 6 ---
# hdparm -i /dev/hdb

/dev/hdb:

 Model=TSSTcorpCD/DVDW TS-L632D, FwRev=AC01, 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:227,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

 * signifies the current active mode

# hdparm /dev/hdb

/dev/hdb:
 IO_support   =  0 (default 16-bit)
 unmaskirq    =  0 (off)
 using_dma    =  0 (off)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    = 256 (on)
 HDIO_GETGEO failed: Inappropriate ioctl for device

*** There is a difference when hdparm /dev/hdb shows DMA on - when I watch DVD movie it works (and the time taken by the kernel while reading the DVD drops down), when off - it skips frames and looses a/v sync.
I know that there is a difference between dma on and off ;)
--- Fedora 7 test 4 ---
# ll /dev/dvdrw
lrwxrwxrwx 1 root root 4  2 май  0,56 /dev/dvdrw -> scd0
# hdparm -i /dev/scd0

/dev/scd0:

 Model=TSSTcorpCD/DVDW TS-L632D                , FwRev=AC01    , 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:227,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

 * signifies the current active mode

this seems correct (udma33)
# hdparm /dev/scd0

/dev/scd0:
 IO_support   =  0 (default 16-bit)
 readonly     =  0 (off)
 readahead    = 256 (on)
 HDIO_GETGEO failed: Inappropriate ioctl for device

ok hdparm seems not to report the dma flag here.... tested on my box and it seems that it does not do it for harddisks either (SATA) but again if the kernel does not enable the dmamode for you _its a bug_ so please file one against kernel (one for fc6 and one for f7)


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]