]> git.proxmox.com Git - mirror_ubuntu-eoan-kernel.git/commit
scsi: hisi_sas: Use pci_irq_get_affinity() for v3 hw as experimental
authorXiang Chen <chenxiang66@hisilicon.com>
Wed, 6 Feb 2019 10:52:55 +0000 (18:52 +0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Fri, 8 Feb 2019 23:08:22 +0000 (18:08 -0500)
commit4fefe5bbf599d6c6bee6b2ee376be789b33ca571
treeac36684e877443ea5da418bc69f43c81503a3b80
parent795f25a31b542df93bff892ce46390f9befa2135
scsi: hisi_sas: Use pci_irq_get_affinity() for v3 hw as experimental

For auto-control irq affinity mode, choose the dq to deliver IO according
to the current CPU.

Then it decreases the performance regression that fio and CQ interrupts are
processed on different node.

For user control irq affinity mode, keep it as before.

To realize it, also need to distinguish the usage of dq lock and sas_dev
lock.

We mark as experimental due to ongoing discussion on managed MSI IRQ
during hotplug:
https://marc.info/?l=linux-scsi&m=154876335707751&w=2

We're almost at the point where we can expose multiple queues to the upper
layer for SCSI MQ, but we need to sort out the per-HBA tags performance
issue.

Signed-off-by: Xiang Chen <chenxiang66@hisilicon.com>
Signed-off-by: John Garry <john.garry@huawei.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/hisi_sas/hisi_sas.h
drivers/scsi/hisi_sas/hisi_sas_main.c
drivers/scsi/hisi_sas/hisi_sas_v2_hw.c
drivers/scsi/hisi_sas/hisi_sas_v3_hw.c