Bug 126837 - Missing DMA modes when using "-i" flag
Summary: Missing DMA modes when using "-i" flag
Status: CLOSED WONTFIX
Alias: None
Product: Fedora
Classification: Fedora
Component: hdparm (Show other bugs)
(Show other bugs)
Version: rawhide
Hardware: athlon Linux
medium
medium
Target Milestone: ---
Assignee: Karsten Hopp
QA Contact:
URL:
Whiteboard:
Keywords:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2004-06-28 05:56 UTC by Ivan Gyurdiev
Modified: 2007-11-30 22:10 UTC (History)
0 users

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


Attachments (Terms of Use)

Description Ivan Gyurdiev 2004-06-28 05:56:44 UTC
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:

 /dev/hda:
 
 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)    
strcat(umodes,"*");
                                if (id->dma_ultra & 0x0008)    
strcat(umodes,"udma3 ");
                                if (id->dma_ultra & 0x1000)    
strcat(umodes,"*");
                                if (id->dma_ultra & 0x0010)    
strcat(umodes,"udma4 ");
                                if (id->dma_ultra & 0x2000)    
strcat(umodes,"*");
                                if (id->dma_ultra & 0x0020)    
strcat(umodes,"udma5 ");
                                if (id->dma_ultra & 0x4000)    
strcat(umodes,"*");
                                if (id->dma_ultra & 0x0040)    
strcat(umodes,"udma6 ");
                                if (id->dma_ultra & 0x8000)    
strcat(umodes,"*");
                                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):
hdparm-5.5-1

How reproducible:
Always

Steps to Reproduce:
1. See Summary

    

Additional info:

Comment 1 Ivan Gyurdiev 2004-07-23 00:22:52 UTC
3 weeks, no reply

Comment 2 Ivan Gyurdiev 2004-10-21 09:24:45 UTC
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.