aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoern Engel <joern@logfs.org>2010-03-26 05:18:36 -0400
committerJoern Engel <joern@logfs.org>2010-03-27 06:19:15 -0400
commitfaaa27ab919799929732c356a92a160f8657ecc6 (patch)
tree4df7ac1b4a5e48018fd93df4262017832f7afec0
parente326068806ee044cc617b1dc24be1293fca3fbf6 (diff)
Write out both superblocks on mismatch
If the first superblock is wrong and the second gets written, there will still be a mismatch on next mount. Write both to make sure they match. Signed-off-by: Joern Engel <joern@logfs.org>
-rw-r--r--fs/logfs/super.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/logfs/super.c b/fs/logfs/super.c
index 018728120bb3..006670fe9e8b 100644
--- a/fs/logfs/super.c
+++ b/fs/logfs/super.c
@@ -277,7 +277,7 @@ static int logfs_recover_sb(struct super_block *sb)
277 } 277 }
278 if (valid0 && valid1 && ds_cmp(ds0, ds1)) { 278 if (valid0 && valid1 && ds_cmp(ds0, ds1)) {
279 printk(KERN_INFO"Superblocks don't match - fixing.\n"); 279 printk(KERN_INFO"Superblocks don't match - fixing.\n");
280 return write_one_sb(sb, super->s_devops->find_last_sb); 280 return logfs_write_sb(sb);
281 } 281 }
282 /* If neither is valid now, something's wrong. Didn't we properly 282 /* If neither is valid now, something's wrong. Didn't we properly
283 * check them before?!? */ 283 * check them before?!? */