On Tue, Aug 24, 2021 at 03:38:24AM +0000, Saurav Kashyap wrote: > Hi Sagi, > Comments inline > > > -----Original Message----- > > From: Sagi Grimberg <sagi@xxxxxxxxxxx> > > Sent: Monday, August 23, 2021 10:51 PM > > To: Nilesh Javali <njavali@xxxxxxxxxxx>; martin.petersen@xxxxxxxxxx; linux- > > nvme@xxxxxxxxxxxxxxxxxxx; Ming Lei <ming.lei@xxxxxxxxxx> > > Cc: linux-scsi@xxxxxxxxxxxxxxx; GR-QLogic-Storage-Upstream <GR-QLogic- > > Storage-Upstream@xxxxxxxxxxx> > > Subject: Re: [PATCH 0/2] qla2xxx - add nvme map_queues support > > > > > > On 8/23/21 5:56 AM, Nilesh Javali wrote: > > > Currently nvme fc doesn't support map queue functionality. This patch > > > set adds map_queue functionality to nvme_fc_mq_ops and > > > nvme_fc_port_template, providing an option to LLDs to map queues > > > similar to SCSI. For qla2xxx, minimum 10% improvement is noticed > > > with this change as it helps in reducing cpu thrashing. > > > > Does this make nvme-fc use managed irq? > > qla2xxx driver uses pci_alloc_irq_vectors_affinity to have affinity with each MSI-X vector. Currently nvme queue are not mapped based on affinity and irq offset. The change is to use blk_mq_pci_map_queues for mapping, this function consider irq affinity as well as irq offset. > OK, got it. Even though without this patchset, nvme-fc actually relies on managed irq since qla2xxx driver uses pci_alloc_irq_vectors_affinity. Now the patchset[1] isn't good for addressing the issue in blk_mq_alloc_request_hctx(). [1] https://lore.kernel.org/linux-block/YR7demOSG6MKFVAF@T590/T/#t Thanks, Ming