summaryrefslogtreecommitdiffstats
path: root/fs/partitions
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-03-02 02:36:47 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-03-02 02:36:47 +0000
commit8624512aa908741ba2795200133eae0d7f4557ea (patch)
treed5d3036fccf2604f4c98dedc11e8adb929d6b52e /fs/partitions
parent7b8f5d6f1d45d9f9de1d26e7d3c32aa5af11b488 (diff)
Merge with 2.3.48.
Diffstat (limited to 'fs/partitions')
-rw-r--r--fs/partitions/check.c6
-rw-r--r--fs/partitions/msdos.c4
2 files changed, 7 insertions, 3 deletions
diff --git a/fs/partitions/check.c b/fs/partitions/check.c
index 31e1e64b6..836d43bf3 100644
--- a/fs/partitions/check.c
+++ b/fs/partitions/check.c
@@ -397,11 +397,15 @@ void grok_partitions(struct gendisk *dev, int drive, unsigned minors, long size)
int first_minor = drive << dev->minor_shift;
int end_minor = first_minor + dev->max_p;
- blk_size[dev->major] = NULL;
+ if(!dev->sizes)
+ blk_size[dev->major] = NULL;
+
dev->part[first_minor].nr_sects = size;
/* No Such Agen^Wdevice or no minors to use for partitions */
if (!size || minors == 1)
return;
+
+ blk_size[dev->major] = NULL;
check_partition(dev, MKDEV(dev->major, first_minor), 1 + first_minor);
/*
diff --git a/fs/partitions/msdos.c b/fs/partitions/msdos.c
index 904b6b0ed..2f315ccd9 100644
--- a/fs/partitions/msdos.c
+++ b/fs/partitions/msdos.c
@@ -351,7 +351,7 @@ int msdos_partition(struct gendisk *hd, kdev_t dev,
int tested_for_xlate = 0;
read_mbr:
-#endif
+#endif /* CONFIG_BLK_DEV_IDE */
if (!(bh = bread(dev,0,get_ptable_blocksize(dev)))) {
if (warn_no_part) printk(" unable to read partition table\n");
return -1;
@@ -359,7 +359,7 @@ read_mbr:
data = bh->b_data;
#ifdef CONFIG_BLK_DEV_IDE
check_table:
-#endif
+#endif /* CONFIG_BLK_DEV_IDE */
/* Use bforget(), because we may have changed the disk geometry */
if (*(unsigned short *) (0x1fe + data) != cpu_to_le16(MSDOS_LABEL_MAGIC)) {
bforget(bh);