diff options
-rw-r--r-- | fs/nilfs2/segbuf.c | 5 | ||||
-rw-r--r-- | fs/nilfs2/segment.c | 2 | ||||
-rw-r--r-- | include/linux/nilfs2_fs.h | 2 |
3 files changed, 6 insertions, 3 deletions
diff --git a/fs/nilfs2/segbuf.c b/fs/nilfs2/segbuf.c index 410ec2b1af4f..850a7c0228fb 100644 --- a/fs/nilfs2/segbuf.c +++ b/fs/nilfs2/segbuf.c | |||
@@ -239,12 +239,15 @@ nilfs_segbuf_fill_in_super_root_crc(struct nilfs_segment_buffer *segbuf, | |||
239 | u32 seed) | 239 | u32 seed) |
240 | { | 240 | { |
241 | struct nilfs_super_root *raw_sr; | 241 | struct nilfs_super_root *raw_sr; |
242 | struct the_nilfs *nilfs = segbuf->sb_super->s_fs_info; | ||
243 | unsigned srsize; | ||
242 | u32 crc; | 244 | u32 crc; |
243 | 245 | ||
244 | raw_sr = (struct nilfs_super_root *)segbuf->sb_super_root->b_data; | 246 | raw_sr = (struct nilfs_super_root *)segbuf->sb_super_root->b_data; |
247 | srsize = NILFS_SR_BYTES(nilfs->ns_inode_size); | ||
245 | crc = crc32_le(seed, | 248 | crc = crc32_le(seed, |
246 | (unsigned char *)raw_sr + sizeof(raw_sr->sr_sum), | 249 | (unsigned char *)raw_sr + sizeof(raw_sr->sr_sum), |
247 | NILFS_SR_BYTES - sizeof(raw_sr->sr_sum)); | 250 | srsize - sizeof(raw_sr->sr_sum)); |
248 | raw_sr->sr_sum = cpu_to_le32(crc); | 251 | raw_sr->sr_sum = cpu_to_le32(crc); |
249 | } | 252 | } |
250 | 253 | ||
diff --git a/fs/nilfs2/segment.c b/fs/nilfs2/segment.c index abbfab974700..8006d0cd4440 100644 --- a/fs/nilfs2/segment.c +++ b/fs/nilfs2/segment.c | |||
@@ -894,7 +894,7 @@ static void nilfs_segctor_fill_in_super_root(struct nilfs_sc_info *sci, | |||
894 | bh_sr = NILFS_LAST_SEGBUF(&sci->sc_segbufs)->sb_super_root; | 894 | bh_sr = NILFS_LAST_SEGBUF(&sci->sc_segbufs)->sb_super_root; |
895 | raw_sr = (struct nilfs_super_root *)bh_sr->b_data; | 895 | raw_sr = (struct nilfs_super_root *)bh_sr->b_data; |
896 | 896 | ||
897 | raw_sr->sr_bytes = cpu_to_le16(NILFS_SR_BYTES); | 897 | raw_sr->sr_bytes = cpu_to_le16(NILFS_SR_BYTES(isz)); |
898 | raw_sr->sr_nongc_ctime | 898 | raw_sr->sr_nongc_ctime |
899 | = cpu_to_le64(nilfs_doing_gc() ? | 899 | = cpu_to_le64(nilfs_doing_gc() ? |
900 | nilfs->ns_nongc_ctime : sci->sc_seg_ctime); | 900 | nilfs->ns_nongc_ctime : sci->sc_seg_ctime); |
diff --git a/include/linux/nilfs2_fs.h b/include/linux/nilfs2_fs.h index 8768c469e93e..bd8678f8a421 100644 --- a/include/linux/nilfs2_fs.h +++ b/include/linux/nilfs2_fs.h | |||
@@ -107,7 +107,7 @@ struct nilfs_super_root { | |||
107 | #define NILFS_SR_DAT_OFFSET(inode_size) NILFS_SR_MDT_OFFSET(inode_size, 0) | 107 | #define NILFS_SR_DAT_OFFSET(inode_size) NILFS_SR_MDT_OFFSET(inode_size, 0) |
108 | #define NILFS_SR_CPFILE_OFFSET(inode_size) NILFS_SR_MDT_OFFSET(inode_size, 1) | 108 | #define NILFS_SR_CPFILE_OFFSET(inode_size) NILFS_SR_MDT_OFFSET(inode_size, 1) |
109 | #define NILFS_SR_SUFILE_OFFSET(inode_size) NILFS_SR_MDT_OFFSET(inode_size, 2) | 109 | #define NILFS_SR_SUFILE_OFFSET(inode_size) NILFS_SR_MDT_OFFSET(inode_size, 2) |
110 | #define NILFS_SR_BYTES (sizeof(struct nilfs_super_root)) | 110 | #define NILFS_SR_BYTES(inode_size) NILFS_SR_MDT_OFFSET(inode_size, 3) |
111 | 111 | ||
112 | /* | 112 | /* |
113 | * Maximal mount counts | 113 | * Maximal mount counts |