Re: [RFC] Restoring HDIO_GETGEO semantics (was: Re: workaround for BIOS / CHS stuff)

Andrew Clausen
2004-07-03T14:45:44Z

On Sat, Jul 03, 2004 at 10:15:47AM -0400, Patrick J. LoPresti wrote:
> Parted is primarily a component of larger systems; namely, the
> RedHat/Suse/etc. installers. Those larger systems can figure out the
> correct geometry (using whatever logic/heuristics/knowledge they have)
> and pass it to the tools which need it, of which Parted is just one.

Why should they bother? Shouldn't libparted just do it all for them?
(Shouldn't parted use EDD?)

> I am suggesting that you cater to the 99.9% case. This means
> providing some way, any way, to override Parted's notion of the
> geometry. In my opinion, you should simply gut the logic for guessing
> the geometry, because it really does not belong in Parted. But I do
> not really care as long as I have a way to bypass it.

I was under the impression that 2.6 provides a mechanism for setting the
HDIO_GETGEO thingy... so any program can tell Parted (and everything
else, for that matter) what they want the geometry to be. Perhaps
I misunderstood your email:

http://www.uwsg.iu.edu/hypermail/linux/kernel/0404.0/0270.html

It contains this:

echo "bios_cyl:C bios_head:H bios_sect:S" > /proc/ide/hda/settings

Isn't the kernel the right place for this kind of communication to
be happening, anyway?

> (Note that this would also provide a way for end users to fix their
> partition tables if/when they broke. Right now, the stock solution
> for disks which Parted "broke" is "sfdisk -d | sfdisk -C# -H# -S#".
> Wouldn't it be nice if people could use Parted instead?)

They can, right? Just type the above, and then do some dummy thing
in parted. (Parted doesn't have a "touch" command).

> > > 1) and 2) need a way to get a "sane" geometry from the BIOS or kernel.
> >
> > Shouldn't we just use LBA? (i.e. x/255/63)
>
> IBM Thinkpads use x/240/63. In theory, other BIOSes could use
> anything.

Do they break on x/255/63?

Cheers,
Andrew