diff options
author | Joern Engel <joern@logfs.org> | 2010-03-26 10:18:36 +0100 |
---|---|---|
committer | Joern Engel <joern@logfs.org> | 2010-03-27 11:19:15 +0100 |
commit | faaa27ab919799929732c356a92a160f8657ecc6 (patch) | |
tree | 4df7ac1b4a5e48018fd93df4262017832f7afec0 /fs/logfs/super.c | |
parent | e326068806ee044cc617b1dc24be1293fca3fbf6 (diff) | |
download | linux-faaa27ab919799929732c356a92a160f8657ecc6.tar.gz linux-faaa27ab919799929732c356a92a160f8657ecc6.tar.bz2 linux-faaa27ab919799929732c356a92a160f8657ecc6.zip |
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>
Diffstat (limited to 'fs/logfs/super.c')
-rw-r--r-- | fs/logfs/super.c | 2 |
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) } if (valid0 && valid1 && ds_cmp(ds0, ds1)) { printk(KERN_INFO"Superblocks don't match - fixing.\n"); - return write_one_sb(sb, super->s_devops->find_last_sb); + return logfs_write_sb(sb); } /* If neither is valid now, something's wrong. Didn't we properly * check them before?!? */ |