Three patches to fix the ordering of freezing a queue with blk_mq_freeze_queue() and obtaining a device queue limits lock with queue_limits_start_update(). These changes ensure that a devie queue is always frozen after the device limits lock is obtained to avoid potential ABBA deadlocks in drivers that need to issue commands to probe a device limits with the limits lock held (e.g. the SCSI sd driver). Damien Le Moal (3): block: Fix sysfs queue freeze and limits lock order block: Fix __blk_mq_update_nr_hw_queues() queue freeze and limits lock order nvme: Fix queue freeze and limits lock order block/blk-mq.c | 25 +++++--- block/blk-sysfs.c | 123 ++++++++++++++++++++------------------- drivers/nvme/host/core.c | 8 ++- 3 files changed, 85 insertions(+), 71 deletions(-) -- 2.47.1