aboutsummaryrefslogtreecommitdiff
path: root/drivers/md/raid0.c
diff options
context:
space:
mode:
authorGravatar Shaohua Li <shli@fb.com> 2017-02-13 16:21:49 -0800
committerGravatar Shaohua Li <shli@fb.com> 2017-02-13 19:24:16 -0800
commit26483819f89c5cf9d27620d70c95afeeeb9bece5 (patch)
treec6bc82084038c13c7c694062b4092a1eb8485abe /drivers/md/raid0.c
parentmd/raid5-cache: exclude reclaiming stripes in reclaim check (diff)
downloadlinux-26483819f89c5cf9d27620d70c95afeeeb9bece5.tar.gz
linux-26483819f89c5cf9d27620d70c95afeeeb9bece5.tar.bz2
linux-26483819f89c5cf9d27620d70c95afeeeb9bece5.zip
md: disable WRITE SAME if it fails in underlayer disks
This makes md do the same thing as dm for write same IO failure. Please see 7eee4ae(dm: disable WRITE SAME if it fails) for details why we need this. We did a little bit different than dm. Instead of disabling writesame in the first IO error, we disable it till next writesame IO coming after the first IO error. This way we don't need to clone a bio. Also reported here: https://bugzilla.kernel.org/show_bug.cgi?id=118581 Suggested-by: NeilBrown <neilb@suse.com> Acked-by: NeilBrown <neilb@suse.com> Signed-off-by: Shaohua Li <shli@fb.com>
Diffstat (limited to 'drivers/md/raid0.c')
-rw-r--r--drivers/md/raid0.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/md/raid0.c b/drivers/md/raid0.c
index 848365d474f3..b3d264452fd5 100644
--- a/drivers/md/raid0.c
+++ b/drivers/md/raid0.c
@@ -503,6 +503,7 @@ static void raid0_make_request(struct mddev *mddev, struct bio *bio)
trace_block_bio_remap(bdev_get_queue(split->bi_bdev),
split, disk_devt(mddev->gendisk),
bio_sector);
+ mddev_check_writesame(mddev, split);
generic_make_request(split);
}
} while (split != bio);