Bug 83473

Summary: setting dma parameters with hdparm hangs system
Product: [Retired] Red Hat Linux Reporter: chris couples <ccouples>
Component: hdparmAssignee: Karsten Hopp <karsten>
Status: CLOSED CURRENTRELEASE QA Contact: Jay Turner <jturner>
Severity: high Docs Contact:
Priority: medium    
Version: 8.0CC: srevivo
Target Milestone: ---   
Target Release: ---   
Hardware: i586   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2003-10-27 11:22:35 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
output of hdparm -Ii /dev/hdc
none
output of hdparm -Ii /dev/hdd
none
output of dmesg none

Description chris couples 2003-02-04 18:52:22 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.1) Gecko/20021003

Description of problem:
When I try and set my hard drives to use dma via:

/sbin/hdparm -d1 /dev/hdd
/sbin/hdparm -d1 /dev/hdc

my server hangs, and can only be rebooted via a power cycle.

This symptom happens regardless of where the dma parameter is
(/etc/sysconfig/harddisks, /etc/sysconfig/harddiskhd[c,d], /etc/rc.d/rc.local)

If I reboot the server with the offending setting in it, boot happens fine, and
the server hangs at 

Setting drive paramters for hdc.

I had previously had these settings set, and need the performance increase they
provide.

Pls. find output from hdparm -Ii /dev/hdc, hdparm -Ii /dev/hdd, and dmesg attached.

thanks in advance for your help


Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
1./sbin/hdparm -d1 /dev/hdc
or
1a. reboot machine, with /etc/sysconfig/harddisks or
/etc/sysconfig/harddiskhd[c,d], or '/sbin/hdparm -d1 /dev/hd[c,d]'
present in /etc/rc.d/rc.local

    

Actual Results:  machine hangs, and is in an unrecoverable state. Only recourse
is to reboot from RH CD 1, and remove the offending settings.

Expected Results:  blazing hard drive transfer rates.

Additional info:

Comment 1 chris couples 2003-02-04 18:53:11 UTC
Created attachment 89843 [details]
output of hdparm -Ii /dev/hdc

Comment 2 chris couples 2003-02-04 18:53:35 UTC
Created attachment 89844 [details]
output of hdparm -Ii /dev/hdd

Comment 3 chris couples 2003-02-04 18:54:11 UTC
Created attachment 89845 [details]
output of dmesg

Comment 4 Karsten Hopp 2003-02-05 12:34:43 UTC
please rename /etc/sysconfig/harddisk* to something else or move them to /tmp,
remove the hdparm command form rc.local and reboot. What is the output of
hdparm -i /dev/hd[cd]then ?

According to you dmesg output, DMA is automatically enabled on your devices and
hdparm -d1 is not necessary at all. It shouldn't be used anymore, because it just
enables DMA, but doesn't set the prober timings such as the kernel does when it
detects DMA capable devices.

You should also check if you have correct UDMA cables for your devices.

Comment 5 chris couples 2003-02-05 13:57:14 UTC
Karsten,

I'm a step and a half ahead. The /etc/sysconfig/harddisks,
/etc/sysconfig/harddiskhd[c,d], and entries in /etc/rc.d/rc.local have already
been removed, as they were causing the machine to hang in the boot process,
where the kernel tries to assign paramters to hdc.

The machine boots, but hdparm /dev/hdc shows:

/dev/hdc:
 multcount    = 16 (on)
 IO_support   =  0 (default 16-bit)
 unmaskirq    =  0 (off)
 using_dma    =  0 (off)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    =  8 (on)
 geometry     = 2482/255/63, sectors = 39876480, start = 0

hdparm -i /dev/hdc gives:

/dev/hdc:

 Model=ST320011A, FwRev=3.75, SerialNo=3HT2XQDV
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
 BuffType=unknown, BuffSize=2048kB, MaxMultSect=16, MultSect=16
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=39876480
 IORDY=on/off, tPIO={min:240,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 udma3 udma4 udma5
 AdvancedPM=no WriteCache=disabled
 Drive conforms to: device does not report version:  1 2 3 4 5

and 

hdparm /dev/hdd shows:

/dev/hdd:
 multcount    = 16 (on)
 IO_support   =  0 (default 16-bit)
 unmaskirq    =  0 (off)
 using_dma    =  0 (off)
 keepsettings =  0 (off)
 readonly     =  0 (off)
 readahead    =  8 (on)
 geometry     = 155072/16/63, sectors = 156312576, start = 0

with /sbin/hdparm -i /dev/hdd giving:

/dev/hdd:

 Model=IC35L080AVVA07-0, FwRev=VA4OA52A, SerialNo=VNC406A4DHGANG
 Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
 RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=52
 BuffType=DualPortCache, BuffSize=1863kB, MaxMultSect=16, MultSect=16
 CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=156312576
 IORDY=on/off, tPIO={min:240,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 udma3 udma4 udma5
 AdvancedPM=yes: disabled (255) WriteCache=disabled
 Drive conforms to: ATA/ATAPI-5 T13 1321D revision 1:  2 3 4 5

--all of the above after a reboot. So while dmesg reports that dma is being set
at the ide interface level, it isn't being reported back from the drives. As
uncached throughput barely gets above 3MB/s, this clearly isn't working for me
as a file server :).



Comment 6 Karsten Hopp 2003-06-03 11:16:38 UTC
Does this problem still exist with the latest errata  kernel-2.4.20-18.8 ?

Comment 7 Karsten Hopp 2003-10-27 11:22:35 UTC
seems to be fixed or I would have heard something from you by now.