Date: Mon, 23 May 2011 09:29:07 +0400 From: "Andrey V. Elsukov" <ae@FreeBSD.org> To: Warner Losh <imp@bsdimp.com> Cc: Adrian Chadd <adrian@FreeBSD.org>, src-committers@FreeBSD.org, svn-src-all@FreeBSD.org, Marcel Moolenaar <marcel@xcllnt.net>, Stefan Farfeleder <stefanf@FreeBSD.org>, svn-src-head@FreeBSD.org Subject: Re: svn commit: r221972 - head/sys/geom/part Message-ID: <4DD9F0A3.701@FreeBSD.org> In-Reply-To: <42C49AE5-C8EA-44A0-AF88-16130BACE912@bsdimp.com> References: <201105152003.p4FK3tnS050889@svn.freebsd.org> <20110522093302.GA2638@mole.fafoe.narf.at> <BANLkTikoBK4ZCHB488eRgbySPBcXC0nnow@mail.gmail.com> <BD2C1F30-854A-4AF2-A9D8-654F3E4E84A8@bsdimp.com> <6AE10D76-AC2F-4D7B-A985-EE072949ECC4@xcllnt.net> <42C49AE5-C8EA-44A0-AF88-16130BACE912@bsdimp.com>
next in thread | previous in thread | raw e-mail | index | archive | help
This is an OpenPGP/MIME signed message (RFC 2440 and 3156) --------------enig36620514AC8740AB558698E3 Content-Type: text/plain; charset=KOI8-R Content-Transfer-Encoding: quoted-printable On 23.05.2011 6:29, Warner Losh wrote: > Looking at one of my flash drives that shows the problem: >=20 > da0: 15423MB (31588351 512 byte sectors: 255H 63S/T 1966C) GEOM_PART: p= artition 1 has end offset > beyond last LBA: 31588350 > 31588325 >=20 > So why does gpart think the last LBA is 25 less than it really is. Wel= l, let's do some sanity > checks first. fdisk -s da0 tells us: > I'm pretty sure this problem is due to a bug in g_part_mbr.c: >=20 > basetable->gpt_last =3D msize - (msize % basetable->gpt_sectors) - 1; >=20 > This is wrong, or at least it is a widely disregarded part of what make= s up an MBR. When I > correct the size, the geom code is fine. There's no requirement in MBR= that a partition end of > any particular boundary, although sometimes you'll find mistaken docume= ntation that suggests this > is the case. Reading between the lines at http://www.boot-us.com/gloss= 03.htm suggests that this > restriction was only for disks < 8GB in size (from the fact it said tha= t all the partitions can > be described with the CHS fields). This is one of the things I learned= when I tried to make > fdisk enforce that: this isn't a requirement of MBR as it is implemente= d in the wild today. There is another opinion: http://www.boot-us.com/gloss02.htm "There is the convention that partitions should always start and end on *= cylinder boundaries*." but "Linux and Windows NT/2000/XP/2003/Vista/2008/7 seem to have no problems = when partitions do not start or end on cylinder boundaries. However other operating systems (e.g= =2E DOS) expect that this convention is obeyed." What way will we choose? I prefer to: leave the choice to the user how partition should be aligned= , and remove automatic alignment to track boundaries from MBR (and probably from all other schem= es). --=20 WBR, Andrey V. Elsukov --=20 WBR, Andrey V. Elsukov --------------enig36620514AC8740AB558698E3 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.10 (MingW32) iQEcBAEBAgAGBQJN2fCnAAoJEAHF6gQQyKF6vj4IAK9k37OApJ5Ml+Rxlq8TFBvR 2U4WEwYn0gUwyAlgaeC0bwbD5YN/H1l94PiU5EUUQFQ/7bdPMrIMqnuOTVjNPuh2 5Od8TRBvUbGI1XeEV2NH++0rUFGMp+pht6ZT3QCv3Btvs0PfDx6Jp+wycIGyCQ7f Qt6dQAzMi6Iuu1Cx9+Cckjao94aJ9WSckhr/RAMJMZ+iubyjYL7pGdb15Xq4xoDZ FnXPHd2cD1VyiY+Hing025q/AwRDgpkcXnLXLgshkeWv2QHEWf2UUkHkp15JH4jz b6FVDc74aA5IFqQBQ+hSaxjNzSgHUcRSxzHkGd+bDreDwPcP3xPHvJHxbGsGhiI= =V3re -----END PGP SIGNATURE----- --------------enig36620514AC8740AB558698E3--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4DD9F0A3.701>