diff options
author | Bart Van Assche <bart.vanassche@sandisk.com> | 2016-10-29 02:23:40 +0200 |
---|---|---|
committer | Jens Axboe <axboe@fb.com> | 2016-11-02 19:50:19 +0100 |
commit | a6eaa8849f92a40f8894d6d0dcab2c16243aaf20 (patch) | |
tree | eccb0e1429ddeec9bedc3c916abec9355bc5d421 /block | |
parent | nvme: Fix a race condition related to stopping queues (diff) | |
download | linux-a6eaa8849f92a40f8894d6d0dcab2c16243aaf20.tar.xz linux-a6eaa8849f92a40f8894d6d0dcab2c16243aaf20.zip |
nvme: Use BLK_MQ_S_STOPPED instead of QUEUE_FLAG_STOPPED in blk-mq code
Make nvme_requeue_req() check BLK_MQ_S_STOPPED instead of
QUEUE_FLAG_STOPPED. Remove the QUEUE_FLAG_STOPPED manipulations
that became superfluous because of this change. Change
blk_queue_stopped() tests into blk_mq_queue_stopped().
This patch fixes a race condition: using queue_flag_clear_unlocked()
is not safe if any other function that manipulates the queue flags
can be called concurrently, e.g. blk_cleanup_queue().
Signed-off-by: Bart Van Assche <bart.vanassche@sandisk.com>
Cc: Keith Busch <keith.busch@intel.com>
Cc: Sagi Grimberg <sagi@grimberg.me>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@fb.com>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions