[PATCH v3 04/11] blk-mq: Introduce blk_mq_quiesce_queue()

Ming Lei tom.leiming at gmail.com
Wed Oct 19 16:47:46 PDT 2016

On Thu, Oct 20, 2016 at 5:04 AM, Bart Van Assche
<bart.vanassche at sandisk.com> wrote:
> On 10/18/2016 02:50 PM, Bart Van Assche wrote:
>> blk_mq_quiesce_queue() waits until ongoing .queue_rq() invocations
>> have finished. This function does *not* wait until all outstanding
>> requests have finished (this means invocation of request.end_io()).
> (replying to my own e-mail)
> The zero-day kernel test infrastructure reported to me that this patch
> causes a build failure with CONFIG_SRCU=n. Should I add "select SRCU" to
> block/Kconfig (excludes TINY_RCU) or should I rather modify this patch such

Select SRCU is fine, and you can see it is done in lots of
places(btrfs, net, quota, kvm, power,...)

> that a mutex or rwsem is used instead of SRCU?

Both should be much worse than SRCU, even not as good as atomic_t.


> Thanks,
> Bart.

Ming Lei

More information about the Linux-nvme mailing list