RE: The WHY's (RE: ide drive w/dma ... system crash)

Andre M. Hedrick (hedrick@Astro.Dyer.Vanderbilt.Edu)
Tue, 11 May 1999 15:31:57 -0500 (CDT)


On Tue, 11 May 1999, Dan Hollis wrote:

> Oh really? So the fact BIOS returns 16383,16,63 instead of 19650,16,63 is
> not a BIOS bug? (Linux could *NOT!!* use the whole 10gb until I manually
> passed in the CHS on the kernel command line).

Wait, the BIOS is doing what it is suppose to do.
The translation rule state that if words 1,3,6 == 16383,16,63 and LBA
capacity exceeds or is equal to 16514064 that you need to calculate the
cylinder value since the hardware is defined wrong.

I challenge your statement that "Linux could *NOT!!* ...." now with the
present kernel code. I started with a blank 12.7GB drive and stepped
through the code to insure that it would see the problem and fix it.
I knew a long time ago that 8.4GB geometry issue would be coming soon.

> Having a CHS table for this drive would have helped.

Nope that list would grow faster than our (USA) national debt.
Name the fool that would maintain that list.......NIMBY......

> Drive is a WDC AC310100B (~10gb). BIOS returns CHS that is completely
> wrong. We know true CHS is 19650,16,63. So we override the BIOS and use
> true CHS. Ta dah. We win, even though the BIOS is broken.

KABOOM you die.........second example IBM DeskStar 15/16 heads..

It has been discovered that there is a jumper that allows one to select
between 15/16 hardwired head reporting. They are shipped with the jumper
selected to 15 and you loose about 5% capacity.

Now if the jumper is set to report 15 heads with 5% less capacity, but the
list declares that you should have 16 heads and we force it........
OH THE MESS...........
It is better that we play be the ATA rules and adapt for anomolies.
Note that I did consider this list option for IBM drives, but it was
shorter and more prudent to add a 5-liner to address this anomoly.

FYI on AWARD. Never ever use the silly drive detect tool in the BIOS.
Set the drive size and translations to AUTO/AUTO and it will see
everything. That tool of theirs is broken and sets up the CMOS/BIOS
values to fail or diminsih capacity.

> Sorry, but it does.

The single case issue will never fly by Linus and we all know it.
If the current code still fails you at the BIOS level then we should
possible consider not using BIOS geometry for IDE-PCI adapters.
We then begin to rely solely on the drive, but some of them are kooky
kludges. Suggestions are welcome but reality usually molds the final
solution.

Andre Hedrick
The Linux IDE guy

Candidate for pre-patch-2.2.8-series or pre-patch-2.2.9-series
http://www.dyer.vanderbilt.edu/server/udma/
2.2.7.uniform-ide-6.19.golf.patch.gz

http://www.dyer.vanderbilt.edu/server/udma/2.2.7.uniform-ide-6.19.patch.gz
http://www.dyer.vanderbilt.edu/server/udma/ide.2.0.37pre11+pat7.gz
http://www.dyer.vanderbilt.edu/server/udma/hdparm-3.5i.patch.gz

APC UPS Daemon Support Center.
http://www.brisse.dk/site/apcupsd/
GPLed source on April 7, 1999

-
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/