Skip to content

Commit 4a54c8c

Browse files
author
Jan Schmidt
committed
btrfs: Moved repair code from inode.c to extent_io.c
The raid-retry code in inode.c can be generalized so that it works for metadata as well. Thus, this patch moves it to extent_io.c and makes the raid-retry code a raid-repair code. Repair works that way: Whenever a read error occurs and we have more mirrors to try, note the failed mirror, and retry another. If we find a good one, check if we did note a failure earlier and if so, do not allow the read to complete until after the bad sector was written with the good data we just fetched. As we have the extent locked while reading, no one can change the data in between. Signed-off-by: Jan Schmidt <[email protected]>
1 parent 2774b2c commit 4a54c8c

File tree

3 files changed

+393
-159
lines changed

3 files changed

+393
-159
lines changed

0 commit comments

Comments
 (0)