Hi all, this is my version of Damien's "Fix queue freeze and limit locking order". A lot looks very similar, but it was done independently based on the previous discussion. Changes since v1: - more comment typo fixing - fix loop as well - make the poll sysfs attr show method more accurate Changes since RFC: - fix a bizzare virtio_blk bisection snafu - set BLK_FEAT_POLL a little less eagerly for blk-mq - drop the loop patch just adding a comment - improve various commit logs and coments Diffstat: block/blk-core.c | 17 ++++- block/blk-integrity.c | 4 - block/blk-mq.c | 17 ----- block/blk-settings.c | 27 +++++++- block/blk-sysfs.c | 134 ++++++++++++++++++++--------------------- block/blk-zoned.c | 7 -- block/blk.h | 1 drivers/block/loop.c | 52 ++++++++++----- drivers/block/nbd.c | 17 ----- drivers/block/virtio_blk.c | 4 - drivers/nvme/host/core.c | 9 +- drivers/scsi/sd.c | 17 +---- drivers/scsi/sr.c | 5 - drivers/usb/storage/scsiglue.c | 5 - include/linux/blkdev.h | 5 - 15 files changed, 164 insertions(+), 157 deletions(-)