Commit ea1a16f7 authored by Ryusuke Konishi's avatar Ryusuke Konishi

nilfs2: fix false warning saying one of two super blocks is broken

After applying commit b2ac86e1, the following message got appeared
after unclean shutdown:

> NILFS warning: broken superblock. using spare superblock.

This turns out to be a false message due to the change which updates
two super blocks alternately.  The secondary super block now can be
selected if it's newer than the primary one.

This kills the false warning by suppressing it if another super block
is not actually broken.
Signed-off-by: default avatarRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
parent af4e3631
...@@ -608,11 +608,11 @@ static int nilfs_load_super_block(struct the_nilfs *nilfs, ...@@ -608,11 +608,11 @@ static int nilfs_load_super_block(struct the_nilfs *nilfs,
return -EINVAL; return -EINVAL;
} }
if (swp) { if (!valid[!swp])
printk(KERN_WARNING "NILFS warning: broken superblock. " printk(KERN_WARNING "NILFS warning: broken superblock. "
"using spare superblock.\n"); "using spare superblock.\n");
if (swp)
nilfs_swap_super_block(nilfs); nilfs_swap_super_block(nilfs);
}
nilfs->ns_sbwcount = 0; nilfs->ns_sbwcount = 0;
nilfs->ns_sbwtime = le64_to_cpu(sbp[0]->s_wtime); nilfs->ns_sbwtime = le64_to_cpu(sbp[0]->s_wtime);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment