summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeilBrown <neilb@cse.unsw.edu.au>2005-06-21 17:17:28 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-21 19:07:47 -0700
commit39730960d94306d7be414e8d54f4e5c071af1278 (patch)
treee12516ecea53d782f845717f53ffa304be69aa37
parent7bfa19f2748000d646dbdf8f48258cfe1d257b52 (diff)
[PATCH] Two small fixes for md verion-1 superblocks.
1/ Must typecast int to (sector_t) before inverting or we might not invert enough bits. 2/ When "bitmap_offset" was added to mdp_superblock_1, we didn't increase the count of words-used (96 to 100). Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--drivers/md/md.c2
-rw-r--r--include/linux/raid/md_p.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/drivers/md/md.c b/drivers/md/md.c
index ef3ad99562c1..65fab74ad737 100644
--- a/drivers/md/md.c
+++ b/drivers/md/md.c
@@ -847,7 +847,7 @@ static int super_1_load(mdk_rdev_t *rdev, mdk_rdev_t *refdev, int minor_version)
case 0:
sb_offset = rdev->bdev->bd_inode->i_size >> 9;
sb_offset -= 8*2;
- sb_offset &= ~(4*2-1);
+ sb_offset &= ~(sector_t)(4*2-1);
/* convert from sectors to K */
sb_offset /= 2;
break;
diff --git a/include/linux/raid/md_p.h b/include/linux/raid/md_p.h
index 8e592a25a8b5..dc65cd435494 100644
--- a/include/linux/raid/md_p.h
+++ b/include/linux/raid/md_p.h
@@ -202,7 +202,7 @@ struct mdp_superblock_1 {
* NOTE: signed, so bitmap can be before superblock
* only meaningful of feature_map[0] is set.
*/
- __u8 pad1[128-96]; /* set to 0 when written */
+ __u8 pad1[128-100]; /* set to 0 when written */
/* constant this-device information - 64 bytes */
__u64 data_offset; /* sector start of data, often 0 */