[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <hnr23h$pq$1@dough.gmane.org>
Date: Wed, 17 Mar 2010 13:04:48 -0400
From: Bill Davidsen <davidsen@....com>
To: linux-kernel@...r.kernel.org
Cc: linux-ide@...r.kernel.org
Subject: Re: ATA 4 KiB sector issues.
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.
>
I think you hit on the real culprit and ignored it, it seems that even modern
BIOS implementations, at least some of them, do not want to cross a cylinder
boundary doing boot. Or maybe that's dumb MBR code, which at least has the
excuse of being size limited.
I did try using 48 sector geometry on a virtual drive, and it seems as though
both Linux and XP will install. Then I tried on a USB stick and the BIOS in
several old Asus laptops will boot that.
I cautiously suggest that since nothing past boot used chs, and using 48 spt
seems to work and gives correct alignment, perhaps there is value in custom
geometry.
--
Bill Davidsen <davidsen@....com>
"We have more to fear from the bungling of the incompetent than from
the machinations of the wicked." - from Slashdot
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists