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

2016-10-19 Thread Ming Lei
On Thu, Oct 20, 2016 at 5:04 AM, Bart Van Assche 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 o

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

2016-10-19 Thread Bart Van Assche
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 kern

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

2016-10-19 Thread Bart Van Assche
On 10/19/2016 06:23 AM, Christoph Hellwig wrote: +/** + * blk_mq_quiesce_queue() - wait until all ongoing queue_rq calls have finished + * + * Note: this function does not prevent that the struct request end_io() + * callback function is invoked. Additionally, it is not prevented that + * new que

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

2016-10-19 Thread Christoph Hellwig
> +/** > + * blk_mq_quiesce_queue() - wait until all ongoing queue_rq calls have > finished > + * > + * Note: this function does not prevent that the struct request end_io() > + * callback function is invoked. Additionally, it is not prevented that > + * new queue_rq() calls occur unless the queue

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

2016-10-18 Thread Bart Van Assche
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()). Signed-off-by: Bart Van Assche Cc: Ming Lei Cc: Hannes Reinecke Cc: Johannes Thumshirn ---