From: Tejun Heo on
Hello,

On 03/17/2010 12:22 AM, Martin K. Petersen wrote:
>>>>>> "Tejun" == Tejun Heo <tj(a)kernel.org> writes:
>
> Tejun> * Anything remotely modern (>= XP) doesn't give a hoot about
> Tejun> cylinder alignment.
>
> Tejun> * Anything older (<= 2000) is very likely to get confused with
> Tejun> custom geometry starting from the BIOS itself. For those
> Tejun> cases, the only thing we can do is aligning partitions to
> Tejun> cylinders abiding BIOS supplied geometry parameters which will
> Tejun> usually be 255/63.
>
> Tejun> So, using custom geometry doesn't help compatibility at all.
>
> Great reads on this topic. Might be worth linking to:
>
> http://www.win.tue.nl/~aeb/partitions/partition_types.html
> http://www.win.tue.nl/~aeb/linux/largedisk.html

Thanks for the links. I'll read and link them. BTW, if you can spot
something wrong regarding this in the doc, please let me know. I'm
still learning how all these legacy stuff is supposed to work so there
likely are some points that I got wrong.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Kevin Easton on
James Bottomley wrote:
> On Wed, 2010-03-17 at 00:20 +0900, Tejun Heo wrote:

....

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

Can't we fix the problem by defaulting to aligning partitions to
start on an LBA that is a multiple of 64260 ?

Such partitions will always be 4KiB-aligned, *and* start-of-cylinder
aligned (assuming 255/63, as seems to be the norm).

Sure, that reduces your partition granularity to almost-32-MiB, but
that's pretty small potatoes these days (and it's only a *default*, so
you could always override that if you really cared, and didn't need
the compatibility).

- Kevin

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Tejun Heo on
Hello,

On 03/17/2010 11:51 AM, Kevin Easton wrote:
> Can't we fix the problem by defaulting to aligning partitions to
> start on an LBA that is a multiple of 64260 ?
>
> Such partitions will always be 4KiB-aligned, *and* start-of-cylinder
> aligned (assuming 255/63, as seems to be the norm).
>
> Sure, that reduces your partition granularity to almost-32-MiB, but
> that's pretty small potatoes these days (and it's only a *default*, so
> you could always override that if you really cared, and didn't need
> the compatibility).

The only thing we can gain by that is possible compatibility w/ very
old operating systems (<=w2k, BTW, it would be great if someone can
actually test it). Plus, breaking the first cylinder assumption might
not be always safe to begin with. I personally don't think it's
something worth departing from the behavior most vendors would assume
from now on (1MiB alignment). It should be enough and safer to
provide a mechanism to choose legacy alignment if someone is trying to
put something which is older than a decade there.

Thanks.

--
tejun
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: H. Peter Anvin on
On 03/16/2010 06:24 AM, James Bottomley wrote:
>
> Because the msdos label can only partition in units of cylinders. If
> you're using an msdos label, picking the right H/S gets you alignment.
>

This is doubly false.

An MS-DOS partition table can partition at any boundary. Some OSes
(like some versions of MS-DOS) needed track alignment because their boot
loaders did not support crossing track boundaries.

Second, the primary field in the (modern) MS-DOS partition table is an
LBA field. The CHS fields are largely historic and useless because of
the 1024-cylinder limitation, and by only being 24 bits total.

-hpa
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: jdow on
From: "Tejun Heo" <tj(a)kernel.org>
Sent: Tuesday, 2010/March/16 20:44


> Hello,
>
> On 03/17/2010 11:51 AM, Kevin Easton wrote:
>> Can't we fix the problem by defaulting to aligning partitions to
>> start on an LBA that is a multiple of 64260 ?
>>
>> Such partitions will always be 4KiB-aligned, *and* start-of-cylinder
>> aligned (assuming 255/63, as seems to be the norm).
>>
>> Sure, that reduces your partition granularity to almost-32-MiB, but
>> that's pretty small potatoes these days (and it's only a *default*, so
>> you could always override that if you really cared, and didn't need
>> the compatibility).
>
> The only thing we can gain by that is possible compatibility w/ very
> old operating systems (<=w2k, BTW, it would be great if someone can
> actually test it). Plus, breaking the first cylinder assumption might
> not be always safe to begin with. I personally don't think it's
> something worth departing from the behavior most vendors would assume
> from now on (1MiB alignment). It should be enough and safer to
> provide a mechanism to choose legacy alignment if someone is trying to
> put something which is older than a decade there.
>
> Thanks.
>
> --
> tejun

WRT very old filesystems - it won't affect Amiga partition tables or
the Amiga FFS. It already understands large block sizes natively. And
that's MY definition of "old" with "very" in front of it.

{^_^} Joanne Dow
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/