On Wed, 2019-04-03 at 18:26 +-0800, Ming Lei wrote: +AD4 However, if request is staggered into plug list, and finally queued +AD4 from plug code path, the refcount in submission side is actually missed. +AD4 And we may start to run queue after queue is removed, then kernel oops +AD4 is triggered. I don't think that this patch is necessary. blk+AF8-mq+AF8-get+AF8-request() increases q+AF8-usage+AF8-counter. In other words, as long as at least one request has been allocated that has not finished it is guaranteed that q+AF8-usage+AF8-counter +AD4 0. So there is no need for additional protection in blk+AF8-mq+AF8-flush+AF8-plug+AF8-list(). Bart.