RE: [PATCH] block: loose check on sg gap
From: Dexuan Cui
Date: Wed Jan 11 2017 - 22:14:14 EST
> From: Ming Lei [mailto:ming.lei@xxxxxxxxxxxxx]
> Sent: Thursday, January 12, 2017 10:54
> To: Dexuan Cui <decui@xxxxxxxxxxxxx>
> Cc: Jens Axboe <axboe@xxxxxx>; Linux Kernel Mailing List <linux-
> kernel@xxxxxxxxxxxxxxx>; linux-block <linux-block@xxxxxxxxxxxxxxx>;
> Christoph Hellwig <hch@xxxxxxxxxxxxx>; Vitaly Kuznetsov
> <vkuznets@xxxxxxxxxx>; Keith Busch <keith.busch@xxxxxxxxx>; Hannes
> Reinecke <hare@xxxxxxx>; Mike Christie <mchristi@xxxxxxxxxx>; Martin K.
> Petersen <martin.petersen@xxxxxxxxxx>; Toshi Kani <toshi.kani@xxxxxxx>;
> Dan Williams <dan.j.williams@xxxxxxxxx>; Damien Le Moal
> <damien.lemoal@xxxxxxxx>; KY Srinivasan <kys@xxxxxxxxxxxxx>
> Subject: Re: [PATCH] block: loose check on sg gap
>
> On Wed, Jan 11, 2017 at 1:10 PM, Dexuan Cui <decui@xxxxxxxxxxxxx> wrote:
> >> From: Dexuan Cui
> >> Sent: Tuesday, December 20, 2016 11:41
> >> To: 'Jens Axboe' <axboe@xxxxxx>; Ming Lei <ming.lei@xxxxxxxxxxxxx>
> >> Cc: Linux Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>; linux-block
> >> <linux-block@xxxxxxxxxxxxxxx>; Christoph Hellwig <hch@xxxxxxxxxxxxx>;
> >> Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>; Keith Busch
> >> <keith.busch@xxxxxxxxx>; Hannes Reinecke <hare@xxxxxxx>; Mike
> Christie
> >> <mchristi@xxxxxxxxxx>; Martin K. Petersen
> <martin.petersen@xxxxxxxxxx>;
> >> Toshi Kani <toshi.kani@xxxxxxx>; Dan Williams
> <dan.j.williams@xxxxxxxxx>;
> >> Damien Le Moal <damien.lemoal@xxxxxxxx>
> >> Subject: RE: [PATCH] block: loose check on sg gap
> >>
> >> > From: Jens Axboe [mailto:axboe@xxxxxx]
> >> > Sent: Tuesday, December 20, 2016 10:31
> >> > To: Ming Lei <ming.lei@xxxxxxxxxxxxx>
> >> > Cc: Linux Kernel Mailing List <linux-kernel@xxxxxxxxxxxxxxx>; linux-block
> >> <linux-
> >> > block@xxxxxxxxxxxxxxx>; Christoph Hellwig <hch@xxxxxxxxxxxxx>;
> Dexuan
> >> Cui
> >> > <decui@xxxxxxxxxxxxx>; Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>;
> Keith
> >> Busch
> >> > <keith.busch@xxxxxxxxx>; Hannes Reinecke <hare@xxxxxxx>; Mike
> Christie
> >> > <mchristi@xxxxxxxxxx>; Martin K. Petersen
> >> <martin.petersen@xxxxxxxxxx>;
> >> > Toshi Kani <toshi.kani@xxxxxxx>; Dan Williams
> >> <dan.j.williams@xxxxxxxxx>;
> >> > Damien Le Moal <damien.lemoal@xxxxxxxx>
> >> > Subject: Re: [PATCH] block: loose check on sg gap
> >> >
> >> > On 12/19/2016 07:07 PM, Ming Lei wrote:
> >> > > On Sun, Dec 18, 2016 at 12:49 AM, Jens Axboe <axboe@xxxxxx> wrote:
> >> > >> On 12/17/2016 03:49 AM, Ming Lei wrote:
> >> > >>> If the last bvec of the 1st bio and the 1st bvec of the next
> >> > >>> bio are contineous physically, and the latter can be merged
> >> > >>> to last segment of the 1st bio, we should think they don't
> >> > >>> violate sg gap(or virt boundary) limit.
> >> > >>>
> >> > >>> Both Vitaly and Dexuan reported lots of unmergeable small bios
> >> > >>> are observed when running mkfs on Hyper-V virtual storage, and
> >> > >>> performance becomes quite low, so this patch is figured out for
> >> > >>> fixing the performance issue.
> >> > >>>
> >> > >>> The same issue should exist on NVMe too sine it sets virt boundary
> >> too.
> >> > >>
> >> > >> It looks pretty reasonable to me. I'll queue it up for some testing,
> >> > >> changes like this always make me a little nervous.
> >> > >
> >> > > Understood.
> >> > >
> >> > > But given it is still in early stage of 4.10 cycle, seems fine to expose
> >> > > it now, and we should have enough time to fix it if there might be
> >> > > regressions.
> >> > >
> >> > > BTW, it passes my xfstest(ext4) over sata/NVMe.
> >> >
> >> > It's been fine here in testing, too. I'm not worried about performance
> >> > regressions, those we can always fix. Merging makes me worried about
> >> > corruption, and those regressions are much worse.
> >> >
> >> > Any reason we need to rush this? I'd be more comfortable pushing this
> to
> >> > 4.11, unless there are strong reasons this should make 4.10.
> >> >
> >> > --
> >> > Jens Axboe
> >>
> >> Hi Jens,
> >>
> >> As far as I know, the patch is important to popular Linux distros,
> >> e.g. at least Ubuntu 14.04.5, 16.x and RHEL 7.3, when they run on
> >> Hyper-V/Azure, because they can suffer from a pretty bad
> >> throughput/latency
> >> in some cases, e.g. mkfs.ext4 for a 100GB partition can take 8 minutes,
> but
> >> with the patch, it only takes 1 second.
> >>
> >> -- Dexuan
> >
> > Hi Ming, Jens,
> > Did you find any issue later when testing with the patch?
> >
> > May I know if it's possible to have it in 4.10 considering the above impact?
> >
> > Is it on some temporary branch of linux-block.git? Looks not.
>
> Dexuan, Jens has said that this patch may land v4.11, so just wait a release
> and let it expose into more tests.
>
> Thanks,
> Ming
Thanks for the reply!
Sorry, I didn't mean to be pushy -- I just wanted to get more idea about the
status of the patch, since I'm unfamiliar with the linux-block repo. :-)
BTW, I've been using the patch for ~1 month and I didn't get any issue.
Thanks,
-- Dexuan