nilfs2: implement fallback for super root search
authorRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Mon, 28 Jun 2010 10:15:26 +0000 (19:15 +0900)
committerRyusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Fri, 23 Jul 2010 01:02:11 +0000 (10:02 +0900)
commit6c12516083cf51b6e576691ac6e20c4a32f4edb9
tree61d3b3d2502aac37ee2a6d426be104ac8728d6aa
parent2d72b99ecdf8cbb5d9422c54b401d9d590b2faf5
nilfs2: implement fallback for super root search

Although nilfs redundantly uses two super blocks and each may point to
different position on log, the current version of nilfs does not try
fallback to the spare super block when it doesn't find any valid log
at the position that the primary super block points to.

This has been a cause of mount failures due to write order reversals
on barrier less block devices.

This inserts fallback code in error path of nilfs_search_super_root
routine to resolve the mount failure problem.

Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
fs/nilfs2/the_nilfs.c