aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/md/raid1.c
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2012-03-19 12:46:39 +1100
committerNeilBrown <neilb@suse.de>2012-03-19 12:46:39 +1100
commit050b66152f87c79e8d66aed0e7996f9336462d5f (patch)
tree44d100c2eadf2a56794e7b526abeb21d1019baa1 /drivers/md/raid1.c
parentmd: add proper merge_bvec handling to RAID0 and Linear. (diff)
downloadlinux-dev-050b66152f87c79e8d66aed0e7996f9336462d5f.tar.xz
linux-dev-050b66152f87c79e8d66aed0e7996f9336462d5f.zip
md/raid10: handle merge_bvec_fn in member devices.
Currently we don't honour merge_bvec_fn in member devices so if there is one, we force all requests to be single-page at most. This is not ideal. So enhance the raid10 merge_bvec_fn to check that function in children as well. This introduces a small problem. There is no locking around calls the ->merge_bvec_fn and subsequent calls to ->make_request. So a device added between these could end up getting a request which violates its merge_bvec_fn. Currently the best we can do is synchronize_sched(). This will work providing no preemption happens. If there is preemption, we just have to hope that new devices are largely consistent with old devices. Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'drivers/md/raid1.c')
0 files changed, 0 insertions, 0 deletions