Re: IDE disk geometry + patch

Andries.Brouwer@cwi.nl
Fri, 4 Dec 1998 10:35:55 +0100 (MET)


From mlord@pobox.com Fri Dec 4 06:19:55 1998

The reason the IDE driver does NOT do what you suggest
is to ensure 100% compatibility with the BIOS view when
using programs (like LILO and fdisk) which interact with
the BIOS.

The code is very careful to correctly use the BIOS view
of the drive under such circumstances, and it is a little
too risky to try changing it at this stage of 2.1.xxx
(it could break many systems through some unforeseen interaction).

Hmm. It sounds like you react without thinking.
Look at the code I want to replace. It corrects bios_cyl
under certain circumstances. I want to correct bios_cyl
under a wider set of circumstances.
It is not at all the case today that the Linux kernel
preserves the BIOS view on the number of cylinders.

Now think about the fdisk and LILO interaction.
What is the effect of a too small number of cylinders?
That part of the disk is inaccessible.
For LILO one may live with that - there have always
been restrictions on the place of the kernel on disk.
But for fdisk that is inacceptable - people struggle
with this, and - as far as I can see - there is no
reason at all to inflict these problems unto them.

The number of people with 8+ GB disks increases quickly.
The handling of large IDE disks has always been broken,
but in 2.0.35 and 2.1.90 this problem was partially
corrected by inserting the test for C/H/S=16383/16/63.
However, this only solves the problem if the BIOS is
not using a translation (`LBA' or `Large' or so).
People with a large IDE disk and translating BIOS
still cannot use the entire disk (without overriding
the kernel view by giving LILO additional hda=C,H,S
parameters, or going into expert mode of fdisk, etc.).

The sooner this is corrected, the better.

Andries

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