提交 20e3028c 编写于 作者: H Haiyang Zhang 提交者: Jakub Kicinski

net: mana: Fix IRQ name - add PCI and queue number

The PCI and queue number info is missing in IRQ names.

Add PCI and queue number to IRQ names, to allow CPU affinity
tuning scripts to work.

Cc: stable@vger.kernel.org
Fixes: ca9c54d2 ("net: mana: Add a driver for Microsoft Azure Network Adapter (MANA)")
Signed-off-by: NHaiyang Zhang <haiyangz@microsoft.com>
Reviewed-by: NJesse Brandeburg <jesse.brandeburg@intel.com>
Link: https://lore.kernel.org/r/1674161950-19708-1-git-send-email-haiyangz@microsoft.comSigned-off-by: NJakub Kicinski <kuba@kernel.org>
上级 f0950402
...@@ -1259,13 +1259,20 @@ static int mana_gd_setup_irqs(struct pci_dev *pdev) ...@@ -1259,13 +1259,20 @@ static int mana_gd_setup_irqs(struct pci_dev *pdev)
gic->handler = NULL; gic->handler = NULL;
gic->arg = NULL; gic->arg = NULL;
if (!i)
snprintf(gic->name, MANA_IRQ_NAME_SZ, "mana_hwc@pci:%s",
pci_name(pdev));
else
snprintf(gic->name, MANA_IRQ_NAME_SZ, "mana_q%d@pci:%s",
i - 1, pci_name(pdev));
irq = pci_irq_vector(pdev, i); irq = pci_irq_vector(pdev, i);
if (irq < 0) { if (irq < 0) {
err = irq; err = irq;
goto free_mask; goto free_mask;
} }
err = request_irq(irq, mana_gd_intr, 0, "mana_intr", gic); err = request_irq(irq, mana_gd_intr, 0, gic->name, gic);
if (err) if (err)
goto free_mask; goto free_mask;
irq_set_affinity_and_hint(irq, req_mask); irq_set_affinity_and_hint(irq, req_mask);
......
...@@ -336,9 +336,12 @@ struct gdma_queue_spec { ...@@ -336,9 +336,12 @@ struct gdma_queue_spec {
}; };
}; };
#define MANA_IRQ_NAME_SZ 32
struct gdma_irq_context { struct gdma_irq_context {
void (*handler)(void *arg); void (*handler)(void *arg);
void *arg; void *arg;
char name[MANA_IRQ_NAME_SZ];
}; };
struct gdma_context { struct gdma_context {
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册