Thread (88 messages) 88 messages, 2 authors, 2015-03-29

Re: [PATCH 16/54] e2fsck: decrement bad count _after_ remapping a duplicate block

From: Theodore Ts'o <tytso@mit.edu>
Date: 2015-01-29 02:05:46

On Mon, Jan 26, 2015 at 11:37:18PM -0800, Darrick J. Wong wrote:
Decrement the bad count *after* we've shown that (a) we can allocate a
replacement block and (b) remap the file block.  Unfortunately,
the only way to tell if the remapping succeeded is to wait until the
next clone_file_block() call or block_iterate3() returns.

Otherwise, there's a corruption error: we decrease the badcount once in
preparation to remap, then the remap fails (either we can't find a
replacement block or we have to split the extent tree and can't find a
new extent block), so we delete the file, which decreases the badcount
on the block a second time.  Later on e2fsck will think that it's
straightened out all the duplicate blocks, which isn't true.

Signed-off-by: Darrick J. Wong <redacted>
Applied, thanks.

						- Ted
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help