• Ming Lin's avatar
    md/raid5: split bio for chunk_aligned_read · 7ef6b12a
    Ming Lin authored
    If a read request fits entirely in a chunk, it will be passed directly to the
    underlying device (providing it hasn't failed of course).  If it doesn't fit,
    the slightly less efficient path that uses the stripe_cache is used.
    Requests that get to the stripe cache are always completely split up as
    necessary.
    
    So with RAID5, ripping out the merge_bvec_fn doesn't cause it to stop work,
    but could cause it to take the less efficient path more often.
    
    All that is needed to manage this is for 'chunk_aligned_read' do some bio
    splitting, much like the RAID0 code does.
    
    Cc: Neil Brown <neilb@suse.de>
    Cc: linux-raid@vger.kernel.org
    Acked-by: default avatarNeilBrown <neilb@suse.de>
    Signed-off-by: default avatarMing Lin <ming.l@ssi.samsung.com>
    Signed-off-by: default avatarJens Axboe <axboe@fb.com>
    7ef6b12a
raid5.c 220 KB