33GB+ IDE drives

Dave Gilbert (gilbertd@treblig.org)
Sat, 11 Sep 1999 22:32:00 +0100 (BST)


Hi all,
What is the right way to fix the 33GB limit in ide-disk.c ?
My IBM-DPTA-373420 - a 34GB drive - is not very happy with 2.3.14 - the
problem is ide-disk.c in lba_capacity_is_ok.

On the 16383/16/63 case (which my drive correctly reports) it then tries
to make up a new cylinder value based on the LBAsects - unfortunatly over
33GB the number of cylinders based on a c/16/63 is greater than 2^16 and
the number of cylinders is an unsigned short.

What is the correct fix? I just removed the correction to the number of
cylinders and then hand fed fsck with sensible numbers. But this isn't
going to work for new people doing installs.

It does seem that updating the drives idea of the number of cylinders is a
bad thing (especially because that means that once LBAsects is called with
the 16383/16/63 case it can't be called again because it has just changed
the 16383!)

What is the correct fix?? Also why does hdparm return a -ve CurSects?
64GB drives can't be that far off as well and I believe there is a bug in
that somewhere?

Dave

/sbin/hdparm -i /dev/hdc

/dev/hdc:

Model=IBM-DPTA-373420, FwRev=P71OA30A, SerialNo=JXYJXF16
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=34
BuffType=3(DualPortCache), BuffSize=1961kB, MaxMultSect=16, MultSect=off
DblWordIO=no, maxPIO=2(fast), DMA=yes, maxDMA=2(fast)
CurCHS=1027/255/63, CurSects=-739245061, LBA=yes, LBAsects=66835440
tDMA={min:120,rec:120}, DMA modes: mword0 mword1 *mword2
IORDY=on/off, tPIO={min:240,w/IORDY:120}, PIO modes: mode3 mode4

-- 
 --------------------------------------------------------------------   
/ Dr. David Alan Gilbert      | Running Linux on           |  Happy  \ 
\   gro.gilbert @ treblig.org |  Alpha, x86, ARM and SPARC |  In Hex /
 ____________________________|___ http://www.treblig.clara.net   __/

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/