[PATCH 0/3] blk-mq/nvme-loop: use nvme-loop's lock class for addressing lockdep false positive warning

Ming Lei ming.lei at redhat.com
Thu Nov 12 02:55:23 EST 2020


Hi,

Qian reported there is hang during booting when shared host tagset is
introduced on megaraid sas. Sumit reported the whole SCSI probe takes
about ~45min in his test.

Turns out it is caused by nr_hw_queues increased, especially commit
b3c6a5997541("block: Fix a lockdep complaint triggered by request queue flushing")
adds synchronize_rcu() for each hctx's release handler.

Address the original lockdep false positive warning by simpler way, then
long scsi probe can be avoided with lockdep enabled.

Ming Lei (3):
  blk-mq: add new API of blk_mq_hctx_set_fq_lock_class
  nvme-loop: use blk_mq_hctx_set_fq_lock_class to set loop's lock class
  Revert "block: Fix a lockdep complaint triggered by request queue
    flushing"

 block/blk-flush.c          | 30 +++++++++++++++++++++++++-----
 block/blk.h                |  1 -
 drivers/nvme/target/loop.c | 10 ++++++++++
 include/linux/blk-mq.h     |  3 +++
 4 files changed, 38 insertions(+), 6 deletions(-)

Cc: Qian Cai <cai at redhat.com>
Cc: Sumit Saxena <sumit.saxena at broadcom.com>
Cc: John Garry <john.garry at huawei.com>
Cc: Kashyap Desai <kashyap.desai at broadcom.com>
Cc: Bart Van Assche <bvanassche at acm.org>
Cc: Hannes Reinecke <hare at suse.de>
-- 
2.25.4




More information about the Linux-nvme mailing list