[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3E0C3AE547FA504DA5E89EA5A24AC85803E2BD87@wdscexbe01.sc.wdc.com>
Date: Wed, 10 Mar 2010 15:16:59 -0800
From: "Daniel Taylor" <Daniel.Taylor@....com>
To: "OGAWA Hirofumi" <hirofumi@...l.parknet.co.jp>,
"Andrew Morton" <akpm@...ux-foundation.org>
Cc: "H. Peter Anvin" <hpa@...or.com>, <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH 2/2] fs/partition/msdos: Fix unusable extended partition for > 512B sector
In the near future, WD will be releasing products that need this patch.
Wouldn't it be a better Linux user experience to never have the problem,
rather than wait for a bug-fix cycle on the kernel?
OTOH, it would be reasonable to wait until someone else had a chance to
test the change. We are awaiting NDAs from RedHat, Canonical, and
Novell/SUSE to send them the affected products for library/application
development.
Regards,
Dan
> -----Original Message-----
> From: OGAWA Hirofumi [mailto:hirofumi@...l.parknet.co.jp]
> Sent: Wednesday, March 10, 2010 7:52 AM
> To: Andrew Morton
> Cc: H. Peter Anvin; Daniel Taylor; linux-kernel@...r.kernel.org
> Subject: [PATCH 2/2] fs/partition/msdos: Fix unusable
> extended partition for > 512B sector
>
> We can drop this patch, if we want to delay until someone notice this
> and have some real requests to this.
>
>
>
>
> Smaller size than a minimum blocksize can't be used, after all it's
> handled like 0 size.
>
> For extended partition itself, this makes sure to use bigger size than
> one logical sector size at least.
>
> Signed-off-by: OGAWA Hirofumi <hirofumi@...l.parknet.co.jp>
> ---
>
> fs/partitions/msdos.c | 13 ++++++++++---
> 1 file changed, 10 insertions(+), 3 deletions(-)
>
> diff -puN fs/partitions/msdos.c~part-support-4k-block-fix
> fs/partitions/msdos.c
> --- linux-2.6/fs/partitions/msdos.c~part-support-4k-block-fix
> 2010-03-08 20:11:39.000000000 +0900
> +++ linux-2.6-hirofumi/fs/partitions/msdos.c 2010-03-08
> 20:32:19.000000000 +0900
> @@ -492,9 +492,16 @@ int msdos_partition(struct parsed_partit
> if (!size)
> continue;
> if (is_extended_partition(p)) {
> - /* prevent someone doing mkfs or mkswap on an
> - extended partition, but leave room
> for LILO */
> - put_partition(state, slot, start, size
> == 1 ? 1 : 2);
> + /*
> + * prevent someone doing mkfs or mkswap on an
> + * extended partition, but leave room for LILO
> + * FIXME: this uses one logical sector
> for > 512b
> + * sector, although it may not be enough/proper.
> + */
> + sector_t n = 2;
> + n = min(size, max(sector_size, n));
> + put_partition(state, slot, start, n);
> +
> printk(" <");
> parse_extended(state, bdev, start, size);
> printk(" >");
> _
>
> --
> OGAWA Hirofumi <hirofumi@...l.parknet.co.jp>
>
--
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