diff options
author | Ming Lei <ming.lei@redhat.com> | 2020-12-03 02:26:37 +0100 |
---|---|---|
committer | Jens Axboe <axboe@kernel.dk> | 2020-12-08 04:30:19 +0100 |
commit | 88c9979334aa5ff8c814ddf578f3113ed6c5ce8e (patch) | |
tree | a2b2694702a8e9a4beba7b38697852ed4b902484 /block/blk-flush.c | |
parent | blk-mq: add new API of blk_mq_hctx_set_fq_lock_class (diff) | |
download | linux-88c9979334aa5ff8c814ddf578f3113ed6c5ce8e.tar.xz linux-88c9979334aa5ff8c814ddf578f3113ed6c5ce8e.zip |
nvme-loop: use blk_mq_hctx_set_fq_lock_class to set loop's lock class
Set nvme-loop's lock class via blk_mq_hctx_set_fq_lock_class for avoiding
lockdep possible recursive locking, then we can remove the dynamically
allocated lock class for each flush queue, finally we can avoid horrible
SCSI probe delay.
This way may not address situation in which one nvme-loop is backed on
another nvme-loop. However, in reality, people seldom uses this way
for test. Even though someone played in this way, it is just one
recursive locking false positive, no real deadlock issue.
Tested-by: Kashyap Desai <kashyap.desai@broadcom.com>
Reported-by: Qian Cai <cai@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Cc: Sumit Saxena <sumit.saxena@broadcom.com>
Cc: John Garry <john.garry@huawei.com>
Cc: Kashyap Desai <kashyap.desai@broadcom.com>
Cc: Bart Van Assche <bvanassche@acm.org>
Cc: Hannes Reinecke <hare@suse.de>
Signed-off-by: Ming Lei <ming.lei@redhat.com>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Diffstat (limited to 'block/blk-flush.c')
0 files changed, 0 insertions, 0 deletions