Hi, Fix wrong queue mapping for kdump kernel since blk-mq updates nr_hw_queues to 1, so driver and blk-mq may have different queue topo. V3: - cover more drivers - clean up blk-mq a bit, as suggested by Christoph V2: - add helper of scsi_max_nr_hw_queues() for avoiding potential build failure because scsi driver often doesn't deal with blk-mq directly - apply scsi_max_nr_hw_queues() for all scsi changes - move lpfc's change into managed irq code path Ming Lei (14): blk-mq: add blk_mq_max_nr_hw_queues() nvme-pci: use blk_mq_max_nr_hw_queues() to calculate io queues ublk: limit max allowed nr_hw_queues virtio-blk: limit max allowed submit queues scsi: core: add helper of scsi_max_nr_hw_queues() scsi: lpfc: use blk_mq_max_nr_hw_queues() to calculate io vectors scsi: mpi3mr: take blk_mq_max_nr_hw_queues() into account for calculating io vectors scsi: megaraid: take blk_mq_max_nr_hw_queues() into account for calculating io vectors scsi: mpt3sas: take blk_mq_max_nr_hw_queues() into account for calculating io vectors scsi: pm8001: take blk_mq_max_nr_hw_queues() into account for calculating io vectors scsi: hisi: take blk_mq_max_nr_hw_queues() into account for calculating io vectors scsi: ufs: limit max allowed nr_hw_queues scsi: storvsc: limit max allowed nr_hw_queues blk-mq: add helpers for treating kdump kernel block/blk-mq.c | 55 ++++++++++++++++++----- drivers/block/ublk_drv.c | 2 +- drivers/block/virtio_blk.c | 3 +- drivers/nvme/host/pci.c | 2 +- drivers/scsi/hisi_sas/hisi_sas_v3_hw.c | 3 ++ drivers/scsi/lpfc/lpfc_init.c | 2 + drivers/scsi/megaraid/megaraid_sas_base.c | 6 ++- drivers/scsi/mpi3mr/mpi3mr_fw.c | 3 ++ drivers/scsi/mpt3sas/mpt3sas_base.c | 4 +- drivers/scsi/pm8001/pm8001_init.c | 4 +- drivers/scsi/storvsc_drv.c | 3 ++ drivers/ufs/core/ufs-mcq.c | 2 +- include/linux/blk-mq.h | 1 + include/scsi/scsi_host.h | 5 +++ 14 files changed, 75 insertions(+), 20 deletions(-) -- 2.40.1