Bug 126837 - Missing DMA modes when using "-i" flag
Missing DMA modes when using "-i" flag
Product: Fedora
Classification: Fedora
Component: hdparm (Show other bugs)
athlon Linux
medium Severity medium
: ---
: ---
Assigned To: Karsten Hopp
Depends On:
  Show dependency treegraph
Reported: 2004-06-28 01:56 EDT by Ivan Gyurdiev
Modified: 2007-11-30 17:10 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2004-10-21 05:25:11 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)

  None (edit)
Description Ivan Gyurdiev 2004-06-28 01:56:44 EDT
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6)
Gecko/20040518 Firefox/0.8

Description of problem:
Hi, I am pretty sure my hard drive is supposed to run at udma5. In any
case, hdparm reports the following:

 Model=IC35L080AVVA07-0, FwRev=VA4OA52A, SerialNo=VNC402A4L7YHKA
 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=4047/16/255, CurSects=16511760, LBA=yes, LBAsects=160836480
 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
 AdvancedPM=yes: disabled (255) WriteCache=enabled
 Drive conforms to: ATA/ATAPI-5 T13 1321D revision 1:
 * signifies the current active mode

so the active mode is missing, but I know dma is enabled.

Anyway, I figure that the dma modes are missing. I decided to
investigate this and found this code:

#ifdef __NEW_HD_DRIVE_ID
                        if (id->hw_config & 0x2000) {
#else /* !__NEW_HD_DRIVE_ID */
                        if (id->word93 & 0x2000) {
#endif /* __NEW_HD_DRIVE_ID */
                                if (id->dma_ultra & 0x0800)    
                                if (id->dma_ultra & 0x0008)    
strcat(umodes,"udma3 ");
                                if (id->dma_ultra & 0x1000)    
                                if (id->dma_ultra & 0x0010)    
strcat(umodes,"udma4 ");
                                if (id->dma_ultra & 0x2000)    
                                if (id->dma_ultra & 0x0020)    
strcat(umodes,"udma5 ");
                                if (id->dma_ultra & 0x4000)    
                                if (id->dma_ultra & 0x0040)    
strcat(umodes,"udma6 ");
                                if (id->dma_ultra & 0x8000)    
                                if (id->dma_ultra & 0x0080)    
strcat(umodes,"udma7 ");

Some prints later I established that this:
  if (id->hw_config & 0x2000)
is false and my hw_config is: HWCONFIG: 0x403b

The ATA 6 Spec rev. 1b says:

Identify Device Information -> Word 93 -> hw_config:
Bit 13: 1: Device Detected CBLID above Vih
        0: Device Detected CBLID below Vil

so what's the problem?

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

How reproducible:

Steps to Reproduce:
1. See Summary


Additional info:
Comment 1 Ivan Gyurdiev 2004-07-22 20:22:52 EDT
3 weeks, no reply
Comment 2 Ivan Gyurdiev 2004-10-21 05:24:45 EDT
Closing this since I can't test it anymore.
The hard drive in question died.

Note You need to log in before you can comment on or make changes to this bug.