summaryrefslogtreecommitdiffstats
path: root/fs/btrfs/raid56.h
diff options
context:
space:
mode:
authorMiao Xie2014-10-23 08:42:50 +0200
committerMiao Xie2014-12-03 03:18:45 +0100
commitaf8e2d1df9848b39dd86b1e696bf8781d2020a88 (patch)
tree0abf72105056f1c5fe7038c37f4c5d63ea29c875 /fs/btrfs/raid56.h
parentBtrfs, raid56: don't change bbio and raid_map (diff)
downloadkernel-qcow2-linux-af8e2d1df9848b39dd86b1e696bf8781d2020a88.tar.gz
kernel-qcow2-linux-af8e2d1df9848b39dd86b1e696bf8781d2020a88.tar.xz
kernel-qcow2-linux-af8e2d1df9848b39dd86b1e696bf8781d2020a88.zip
Btrfs, scrub: repair the common data on RAID5/6 if it is corrupted
This patch implement the RAID5/6 common data repair function, the implementation is similar to the scrub on the other RAID such as RAID1, the differentia is that we don't read the data from the mirror, we use the data repair function of RAID5/6. Signed-off-by: Miao Xie <miaox@cn.fujitsu.com>
Diffstat (limited to 'fs/btrfs/raid56.h')
-rw-r--r--fs/btrfs/raid56.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/btrfs/raid56.h b/fs/btrfs/raid56.h
index ea5d73bfdfbe..b310e8c830d1 100644
--- a/fs/btrfs/raid56.h
+++ b/fs/btrfs/raid56.h
@@ -41,7 +41,7 @@ static inline int nr_data_stripes(struct map_lookup *map)
int raid56_parity_recover(struct btrfs_root *root, struct bio *bio,
struct btrfs_bio *bbio, u64 *raid_map,
- u64 stripe_len, int mirror_num);
+ u64 stripe_len, int mirror_num, int hold_bbio);
int raid56_parity_write(struct btrfs_root *root, struct bio *bio,
struct btrfs_bio *bbio, u64 *raid_map,
u64 stripe_len);