Messages in this thread | | | Date | Wed, 29 Apr 2015 08:09:19 +1000 | From | NeilBrown <> | Subject | Re: [PATCH 07/10] block: kill merge_bvec_fn() completely |
| |
On Mon, 27 Apr 2015 23:48:34 -0700 Ming Lin <mlin@kernel.org> wrote:
> From: Kent Overstreet <kent.overstreet@gmail.com> > > As generic_make_request() is now able to handle arbitrarily sized bios, > it's no longer necessary for each individual block driver to define its > own ->merge_bvec_fn() callback. Remove every invocation completely.
This patch it just a little premature I think.
md/raid5 still assumes read requests will mostly fit within a single chunk (which merge_bvec_fn encourages) so they can be serviced without using the stripe-cache. You've just broken that assumption.
I think 'chunk_aligned_read' needs to get a loop using bio_split, a bit like raid0, first.
Thanks, NeilBrown [unhandled content-type:application/pgp-signature] | |