aboutsummaryrefslogtreecommitdiffstats
path: root/fs/partitions/amiga.c
diff options
context:
space:
mode:
authorSuzuki K P <suzuki@in.ibm.com>2006-12-06 23:35:16 -0500
committerLinus Torvalds <torvalds@woody.osdl.org>2006-12-07 11:39:30 -0500
commit57881dd9df40b76dc7fc6a0d13fd75f337accb32 (patch)
tree088010827c14fbe75628c64848839616175bb9d6 /fs/partitions/amiga.c
parent5127d002f9769ba6b1691de78dd3a5c14635e183 (diff)
[PATCH] Fix check_partition routines
check_partition() stops its probe once it hits an I/O error from the partition checkers. This would prevent the actual partition checker getting a chance to verify the partition. So this patch lets check_partition() continue probing untill it hits a success while recording the I/O error which might have been reported by the checking routines. Also, it does some cleanup of the partition methods for ibm, atari and amiga to return -1 upon hitting an I/O error. Signed-off-by: Suzuki K P <suzuki@in.ibm.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/partitions/amiga.c')
-rw-r--r--fs/partitions/amiga.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/partitions/amiga.c b/fs/partitions/amiga.c
index 3068528890a6..9917a8c360f2 100644
--- a/fs/partitions/amiga.c
+++ b/fs/partitions/amiga.c
@@ -43,6 +43,7 @@ amiga_partition(struct parsed_partitions *state, struct block_device *bdev)
43 if (warn_no_part) 43 if (warn_no_part)
44 printk("Dev %s: unable to read RDB block %d\n", 44 printk("Dev %s: unable to read RDB block %d\n",
45 bdevname(bdev, b), blk); 45 bdevname(bdev, b), blk);
46 res = -1;
46 goto rdb_done; 47 goto rdb_done;
47 } 48 }
48 if (*(__be32 *)data != cpu_to_be32(IDNAME_RIGIDDISK)) 49 if (*(__be32 *)data != cpu_to_be32(IDNAME_RIGIDDISK))
@@ -79,6 +80,7 @@ amiga_partition(struct parsed_partitions *state, struct block_device *bdev)
79 if (warn_no_part) 80 if (warn_no_part)
80 printk("Dev %s: unable to read partition block %d\n", 81 printk("Dev %s: unable to read partition block %d\n",
81 bdevname(bdev, b), blk); 82 bdevname(bdev, b), blk);
83 res = -1;
82 goto rdb_done; 84 goto rdb_done;
83 } 85 }
84 pb = (struct PartitionBlock *)data; 86 pb = (struct PartitionBlock *)data;