Whamcloud - gitweb
e2fsck: fix rule-violating lblk->pblk mappings on bigalloc filesystems
authorDarrick J. Wong <darrick.wong@oracle.com>
Sat, 26 Jul 2014 00:34:04 +0000 (17:34 -0700)
committerTheodore Ts'o <tytso@mit.edu>
Sat, 26 Jul 2014 20:27:41 +0000 (16:27 -0400)
commit9a1d614df217c02ea6b2cb0072fccfe706aea111
treeeb680da99882ee209d775df4606831df68b9ead2
parentff11309ecc24fae663a4d65947b24c371a04a5c7
e2fsck: fix rule-violating lblk->pblk mappings on bigalloc filesystems

As far as I can tell, logical block mappings on a bigalloc filesystem are
supposed to follow a few constraints:

 * The logical cluster offset must match the physical cluster offset.
 * A logical cluster may not map to multiple physical clusters.

Since the multiply-claimed block recovery code can be used to fix these
problems, teach e2fsck to find these transgressions and fix them.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Theodore Ts'o <tytso@mit.edu>
e2fsck/pass1.c
e2fsck/pass1b.c
e2fsck/problem.c
e2fsck/problem.h