Find the answer to your Linux question:
Results 1 to 5 of 5
this is one of those lingering things that I have not been able to get working. I have read mixed reviews of doing this, but mostly I can't find much ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Linux Enthusiast
    Join Date
    Feb 2003
    Location
    Ontario, Canada
    Posts
    556

    dma in red hat 7.3


    this is one of those lingering things that I have not been able to get working. I have read mixed reviews of doing this, but mostly I can't find much info how to turn dma on the drives in red hat 7.3
    I saw something on the Xine site, but it didn't work

    Anyone have a way of doing this that has been used and works effectively in this particular distro?

    I'm using hdparm and got this info so far...

    Code:
    /sbin/hdparm
    
    hdparm - get/set hard disk parameters - version v4.6
    
    Usage:  hdparm  [options] [device] ..
    
    Options:
     -a   get/set fs readahead
     -A   set drive read-lookahead flag (0/1)
     -b   get/set bus state (0 == off, 1 == on, 2 == tristate)
     -B   get Advanced Power Management setting (1-255)
     -c   get/set IDE 32-bit IO setting
     -C   check IDE power mode status
     -d   get/set using_dma flag
     -D   enable/disable drive defect-mgmt
     -E   set cd-rom drive speed
     -f   flush buffer cache for device on exit
     -g   display drive geometry
     -h   display terse usage information
     -i   display drive identification
     -I   detailed/current information directly from drive
     -k   get/set keep_settings_over_reset flag (0/1)
     -K   set drive keep_features_over_reset flag (0/1)
     -L   set drive doorlock (0/1) (removable harddisks only)
     -m   get/set multiple sector count
     -n   get/set ignore-write-errors flag (0/1)
     -p   set PIO mode on IDE interface chipset (0,1,2,3,4,...)
     -P   set drive prefetch count
     -q   change next setting quietly
     -r   get/set readonly flag (DANGEROUS to set)
     -R   register an IDE interface (DANGEROUS)
     -S   set standby (spindown) timeout
     -t   perform device read timings
     -T   perform cache read timings
     -u   get/set unmaskirq flag (0/1)
     -U   un-register an IDE interface (DANGEROUS)
     -v   default; same as -acdgkmnru (-gr for SCSI, -adgr for XT)
     -V   display program version and exit immediately
     -w   perform device reset (DANGEROUS)
     -W   set drive write-caching flag (0/1) (DANGEROUS)
     -x   perform device for hotswap flag (0/1) (DANGEROUS)
     -X   set IDE xfer mode (DANGEROUS)
     -y   put IDE drive in standby mode
     -Y   put IDE drive to sleep
     -Z   disable Seagate auto-powersaving mode

  2. #2
    Linux Guru
    Join Date
    Oct 2001
    Location
    Täby, Sweden
    Posts
    7,578
    Are you sure that it isn't already using DMA? Have you tried compiling the kernel driver for your IDE chipset?

  3. #3
    Linux Enthusiast
    Join Date
    Feb 2003
    Location
    Ontario, Canada
    Posts
    556
    Here is the output in order - hda, hdb,hdc,hdd - I have two hard drives and two rom drives as such:

    hda - hd master
    hdb - hd slave
    hdc - dvd rom
    hdd - cd writer


    Code:
    /sbin/hdparm /dev/hda
    
    /dev/hda:
     multcount    = 16 (on)
     I/O support  =  1 (32-bit)
     unmaskirq    =  1 (on)
     using_dma    =  1 (on)
     keepsettings =  0 (off)
     nowerr       =  0 (off)
     readonly     =  0 (off)
     readahead    =  8 (on)
     geometry     = 9733/255/63, sectors = 156368016, start = 0
     busstate     =  1 (on)

    Code:
    /sbin/hdparm /dev/hdb
    
    /dev/hdb:
     multcount    = 16 (on)
     I/O support  =  1 (32-bit)
     unmaskirq    =  1 (on)
     using_dma    =  1 (on)
     keepsettings =  0 (off)
     nowerr       =  0 (off)
     readonly     =  0 (off)
     readahead    =  8 (on)
     geometry     = 7299/255/63, sectors = 117266688, start = 0
     busstate     =  1 (on)
    Code:
    /sbin/hdparm /dev/hdc
    
    /dev/hdc:
     HDIO_GET_MULTCOUNT failed: Invalid argument
     I/O support  =  1 (32-bit)
     unmaskirq    =  1 (on)
     using_dma    =  0 (off)
     keepsettings =  0 (off)
     HDIO_GET_NOWERR failed: Invalid argument
     readonly     =  1 (on)
     readahead    =  8 (on)
     HDIO_GETGEO failed: Invalid argument
     busstate     =  1 (on)
    Code:
    /sbin/hdparm /dev/hdd
    
    /dev/hdd:
     HDIO_GET_MULTCOUNT failed: Input/output error
     I/O support  =  1 (32-bit)
     unmaskirq    =  1 (on)
     using_dma    =  0 (off)
     keepsettings =  0 (off)
     HDIO_GET_NOWERR failed: Input/output error
     readonly     =  0 (off)
     BLKRAGET failed: Input/output error
     HDIO_GETGEO failed: Invalid argument
     busstate     =  1 (on)
    As you can see, dma IS enabled on the hard drives so it must be in the kernel and besides, I am using red hat 7.3, not gentoo, so it should already come compiled in the kernel, so I figure it is a long shot that it isn't but I never rule anything out totally.

  4. $spacer_open
    $spacer_close
  5. #4
    Linux Guru
    Join Date
    Oct 2001
    Location
    Täby, Sweden
    Posts
    7,578
    More probable is that the kernel activated DMA on them without the driver (yes, that is very possible). Not even RHs kernels come with many IDE drivers built it, at least not as far as I know. The thing is that the IDE drivers cannot be built as modules (don't ask me why), and I don't think that RedHat wants to bloat the core kernel more than necessary.
    If your IDE chipset's driver isn't compiled into the kernel, I'd recommend doing so, since it usually increases speed by an order of magnitude or more. At least it did for me, and almost by two orders of magnitude.

  6. #5
    Linux Enthusiast
    Join Date
    Feb 2003
    Location
    Ontario, Canada
    Posts
    556
    oddly enough, I checked dma out on an install of rh 9 and it had dma enabled (although the process for enabling dma in rh 8 and above is different)

    I may look into compiling the ide chipset into the kernel - especially if it means an increase in speed. My system runs fairly fast, but when I move and copy data files on my drives, it seems slower than it should be.

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •