diff options
| author | Chris Mason <chris.mason@fusionio.com> | 2013-02-20 14:06:05 -0500 | 
|---|---|---|
| committer | Chris Mason <chris.mason@fusionio.com> | 2013-02-20 14:06:05 -0500 | 
| commit | e942f883bc6651d50be139477baf6fb0eed3d5bb (patch) | |
| tree | e1d19783e9c8b42198a69c17c9719fb90f302847 /fs/btrfs/scrub.c | |
| parent | b2c6b3e0611c58fbeb6b9c0892b6249f7bdfaf6b (diff) | |
| parent | 0e4e02636611dbf89a2f36320a32054f9936d6cb (diff) | |
| download | olio-linux-3.10-e942f883bc6651d50be139477baf6fb0eed3d5bb.tar.xz olio-linux-3.10-e942f883bc6651d50be139477baf6fb0eed3d5bb.zip  | |
Merge branch 'raid56-experimental' into for-linus-3.9
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
Conflicts:
	fs/btrfs/ctree.h
	fs/btrfs/extent-tree.c
	fs/btrfs/inode.c
	fs/btrfs/volumes.c
Diffstat (limited to 'fs/btrfs/scrub.c')
| -rw-r--r-- | fs/btrfs/scrub.c | 8 | 
1 files changed, 8 insertions, 0 deletions
diff --git a/fs/btrfs/scrub.c b/fs/btrfs/scrub.c index c78b2a3fc33..53c3501fa4c 100644 --- a/fs/btrfs/scrub.c +++ b/fs/btrfs/scrub.c @@ -28,6 +28,7 @@  #include "dev-replace.h"  #include "check-integrity.h"  #include "rcu-string.h" +#include "raid56.h"  /*   * This is only the first step towards a full-features scrub. It reads all @@ -2254,6 +2255,13 @@ static noinline_for_stack int scrub_stripe(struct scrub_ctx *sctx,  	struct btrfs_device *extent_dev;  	int extent_mirror_num; +	if (map->type & (BTRFS_BLOCK_GROUP_RAID5 | +			 BTRFS_BLOCK_GROUP_RAID6)) { +		if (num >= nr_data_stripes(map)) { +			return 0; +		} +	} +  	nstripes = length;  	offset = 0;  	do_div(nstripes, map->stripe_len);  |