[dm-devel] [PATCH 8/9] dm: Fix two race conditions related to stopping and starting queues

Mike Snitzer snitzer at redhat.com
Thu Sep 1 22:18:23 UTC 2016


On Thu, Sep 01 2016 at  5:17pm -0400,
Mike Snitzer <snitzer at redhat.com> wrote:

> On Thu, Sep 01 2016 at  4:52pm -0400,
> Bart Van Assche <bart.vanassche at sandisk.com> wrote:
> 
> > On 09/01/2016 01:48 PM, Mike Snitzer wrote:
> > >Yeah, I since fixed that.  Doesn't change the fact that your use of
> > >blk_mq_freeze_queue() causes the 100% cpu usage.
> > 
> > Hello Mike,
> > 
> > Sorry but that doesn't make sense to me. blk_mq_freeze_queue()
> > either returns quickly or waits. It cannot cause 100% CPU usage.
> > Something else must be going on. If you can make the code available
> > that you used in your test I will have a look at it.
> 
> The suspend is hanging due the blk_mq_freeze_queue() -- and in turn the
> resume (after reinstating paths) never happens.  So no paths are
> available.  IO just keeps getting requeued, hence the 100% usage.
> 
> The root of the problem is that the suspend isn't completing though.
> 
> I've moved your work out to my private devel branch, see:
> http://git.kernel.org/cgit/linux/kernel/git/snitzer/linux.git/log/?h=devel

FYI I get the same 'dmsetup suspend --nolockfs --noflush mp' hang,
running mptest's test_02_sdev_delete, when I try your unmodified
patchset, see:

http://git.kernel.org/cgit/linux/kernel/git/snitzer/linux.git/log/?h=devel.bart




More information about the dm-devel mailing list