]> www.infradead.org Git - nvme.git/commit
nvmet: pci-epf: cleanup nvmet_pci_epf_raise_irq()
authorDamien Le Moal <dlemoal@kernel.org>
Thu, 8 May 2025 23:25:02 +0000 (08:25 +0900)
committerChristoph Hellwig <hch@lst.de>
Tue, 13 May 2025 05:57:11 +0000 (07:57 +0200)
commit4236e600bf902202214aa6277e84c4738c56f762
tree2c1fb43ab42ae5d0572703ab7c2f3ead446aca40
parent2c3a6f6a28051f323baf19b48af86e48b812831d
nvmet: pci-epf: cleanup nvmet_pci_epf_raise_irq()

There is no point in taking the controller irq_lock and calling
nvmet_pci_epf_should_raise_irq() for a completion queue which does not
have IRQ enabled (NVMET_PCI_EPF_Q_IRQ_ENABLED flag is not set).
Move the test for the NVMET_PCI_EPF_Q_IRQ_ENABLED flag out of
nvmet_pci_epf_should_raise_irq() to the top of nvmet_pci_epf_raise_irq()
to return early when no IRQ should be raised.

Also, use dev_err_ratelimited() to avoid a message storm under load when
raising IRQs is failing.

Signed-off-by: Damien Le Moal <dlemoal@kernel.org>
Reviewed-by: Niklas Cassel <cassel@kernel.org>
Signed-off-by: Christoph Hellwig <hch@lst.de>
drivers/nvme/target/pci-epf.c