From: viro@www.linux.org.uk floppy98 ->probe() forgot to set *part to 0; fixed. drivers/block/floppy98.c | 1 + fs/partitions/nec98.c | 3 +-- 2 files changed, 2 insertions(+), 2 deletions(-) diff -puN drivers/block/floppy98.c~large-dev_t-2nd-02 drivers/block/floppy98.c --- 25/drivers/block/floppy98.c~large-dev_t-2nd-02 2003-09-05 00:49:30.000000000 -0700 +++ 25-akpm/drivers/block/floppy98.c 2003-09-05 00:49:30.000000000 -0700 @@ -4249,6 +4249,7 @@ static struct kobject *floppy_find(dev_t return NULL; if (((*part>>2) & 0x1f) >= NUMBER(floppy_type)) return NULL; + *part = 0; return get_disk(disks[drive]); } diff -puN fs/partitions/nec98.c~large-dev_t-2nd-02 fs/partitions/nec98.c --- 25/fs/partitions/nec98.c~large-dev_t-2nd-02 2003-09-05 00:49:30.000000000 -0700 +++ 25-akpm/fs/partitions/nec98.c 2003-09-05 00:49:30.000000000 -0700 @@ -73,10 +73,9 @@ int nec98_partition(struct parsed_partit const struct nec98_partition *part; unsigned char *data; int sector_size = bdev_hardsect_size(bdev); - int major = MAJOR(bdev->bd_dev); if (ioctl_by_bdev(bdev, HDIO_GETGEO, (unsigned long)&geo) != 0) { - printk(" unsupported disk (major = %u)\n", major); + printk(" unsupported disk (%s)\n", bdev->bd_disk->disk_name); return 0; } _