On Sun, 28 Nov 2010 04:18:25 +0000 Ben Hutchings <b...@debian.org> wrote:
> On Sun, 2010-11-28 at 08:28 +1100, Neil Brown wrote: > > The fix I would recommend for 2.6.26 is to add > > > > if (q->merge_bvec_fn) > > rs->max_phys_segments = 1; > > > > to dm_set_device_limits. Though the redhat one is probably adequate. > > > > If you really need an upstream fix, you will need to chase upstream to apply > > one :-( > > I won't do that myself - as you can see, I don't really understand the > issue fully. Is that fix also valid (modulo renaming of > max_phys_segments) for later versions? > Yes. For current mainline it would look like replacing if (q->merge_bvec_fn && !ti->type->merge) limits->max_sectors = min_not_zero(limits->max_sectors, (unsigned int) (PAGE_SIZE >> 9)); with if (q->merge_bvec_fn && !ti->type->merge) limits->max_segments = 1; (the test on ->type->merge is important and applies to 2.6.26 as well). NeilBrown
signature.asc
Description: PGP signature