On 7/2/25 18:33, Daniel Wagner wrote:
Ensure that IRQ affinity setup also respects the queue-to-CPU mapping
constraints provided by the block layer. This allows the SCSI drivers
to avoid assigning interrupts to CPUs that the block layer has excluded
(e.g., isolated CPUs).

Signed-off-by: Daniel Wagner <w...@kernel.org>
---
  drivers/scsi/fnic/fnic_isr.c              | 7 +++++--
  drivers/scsi/hisi_sas/hisi_sas_v3_hw.c    | 1 +
  drivers/scsi/megaraid/megaraid_sas_base.c | 5 ++++-
  drivers/scsi/mpi3mr/mpi3mr_fw.c           | 6 +++++-
  drivers/scsi/mpt3sas/mpt3sas_base.c       | 5 ++++-
  drivers/scsi/pm8001/pm8001_init.c         | 1 +
  drivers/scsi/qla2xxx/qla_isr.c            | 1 +
  drivers/scsi/smartpqi/smartpqi_init.c     | 7 +++++--
  8 files changed, 26 insertions(+), 7 deletions(-)
>

All of these drivers are not aware of CPU hotplug, and as such
will not be notified when the number of CPUs changes.
But you use 'blk_mq_online_queue_affinity()' for all of these
drivers.
Wouldn't 'blk_mq_possible_queue_affinit()' a better choice here
to insulate against CPU hotplug effects?

Also some drivers which are using irq affinity (eg aacraid, lpfc) are
missing from these conversions. Why?

Cheers,

Hannes
--
Dr. Hannes Reinecke                  Kernel Storage Architect
h...@suse.de                                +49 911 74053 688
SUSE Software Solutions GmbH, Frankenstr. 146, 90461 Nürnberg
HRB 36809 (AG Nürnberg), GF: I. Totev, A. McDonald, W. Knoblich

Reply via email to