Re: [PATCH v3 0/11] Fix race conditions related to stopping block layer queues

2016-10-20 Thread Bart Van Assche
On 10/20/2016 07:52 AM, Keith Busch wrote: diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c index ccd9cc5..078530c 100644 --- a/drivers/nvme/host/core.c +++ b/drivers/nvme/host/core.c @@ -201,7 +201,7 @@ static struct nvme_ns *nvme_get_ns_from_disk(struct gendisk *disk) void nv

Re: [PATCH v3 0/11] Fix race conditions related to stopping block layer queues

2016-10-20 Thread Keith Busch
On Wed, Oct 19, 2016 at 04:51:18PM -0700, Bart Van Assche wrote: > > I assume that line 498 in blk-mq.c corresponds to BUG_ON(blk_queued_rq(rq))? > Anyway, it seems to me like this is a bug in the NVMe code and also that > this bug is completely unrelated to my patch series. In nvme_complete_rq()

Re: [PATCH v3 0/11] Fix race conditions related to stopping block layer queues

2016-10-19 Thread Bart Van Assche
On 10/19/2016 03:14 PM, Keith Busch wrote: I'm running linux 4.9-rc1 + linux-block/for-linus, and alternating tests with and without this series. Without this, I'm not seeing any problems in a link-down test while running fio after ~30 runs. With this series, I only see the test pass infrequent

Re: [PATCH v3 0/11] Fix race conditions related to stopping block layer queues

2016-10-19 Thread Keith Busch
Hi Bart, I'm running linux 4.9-rc1 + linux-block/for-linus, and alternating tests with and without this series. Without this, I'm not seeing any problems in a link-down test while running fio after ~30 runs. With this series, I only see the test pass infrequently. Most of the time I observe one

Re: [PATCH v3 0/11] Fix race conditions related to stopping block layer queues

2016-10-18 Thread Bart Van Assche
On 10/18/2016 02:48 PM, Bart Van Assche wrote: - blk_mq_quiesce_queue() has been reworked (thanks to Ming Lin and Sagi for their feedback). (replying to my own e-mail) A correction: Ming Lei provided feedback on v2 of this patch series instead of Ming Lin. Bart. -- To unsubscribe from th

[PATCH v3 0/11] Fix race conditions related to stopping block layer queues

2016-10-18 Thread Bart Van Assche
Hello Jens, Multiple block drivers need the functionality to stop a request queue and to wait until all ongoing request_fn() / queue_rq() calls have finished without waiting until all outstanding requests have finished. Hence this patch series that introduces the blk_mq_quiesce_queue() and bl