Re: ATA 4 KiB sector issues.

From: James Bottomley
Date: Tue Mar 16 2010 - 11:23:33 EST


On Wed, 2010-03-17 at 00:20 +0900, Tejun Heo wrote:
> On 03/17/2010 12:02 AM, James Bottomley wrote:
> > On Tue, 2010-03-16 at 23:50 +0900, Tejun Heo wrote:
> >> e.g. If the first partition begins at CHS 0/32/33 and ends at
> >> 12/233/19 and the corresponding LBA addresses are 2048 and 206848, you
> >> can solve the equation and determine that the parameters gotta be 63
> >> secs/trk and 255 heads/cyl to make those two pairs of addresses match
> >> each other and in fact some BIOSs try to do this depending on
> >> configuration (and sometimes falls into infinite loop or causes other
> >> boot related problems if the parameters are too uncommon).
> >
> > for an msdos label, this is illegal, that was Arnd's point. The
> > partitions have to begin and end on cylinder boundaries*. Knowing that,
> > you can deduce the geometry from the last sector entry.
> >
> > * at least if you want to preserve windows compatibility, which is what
> > most of our partitioning tools seem to do.
>
> Well, the thing is that
>
> * Anything remotely modern (>= XP) doesn't give a hoot about cylinder
> alignment.
>
> * Anything older (<= 2000) is very likely to get confused with custom
> geometry starting from the BIOS itself. For those cases, the only
> thing we can do is aligning partitions to cylinders abiding BIOS
> supplied geometry parameters which will usually be 255/63.
>
> So, using custom geometry doesn't help compatibility at all.

Our partitioning tool still obey the integral cylinder rule ... we can
argue about whether they should, but what we need is a strategy for
fixing what is rather than what should be.

James

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