[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 21:17:18 UTC 2016


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




More information about the dm-devel mailing list