mirror of
https://github.com/torvalds/linux.git
synced 2024-11-16 00:52:01 +00:00
IB/mthca: Distinguish multiple devices in /proc/interrupts
When the mthca driver uses the same name for interrupts for every device in the system. This can make it very confusing trying to work out exactly which device MSI-X interrupts are for. Change the driver to add the PCI name of the device to the interrupt name. Signed-off-by: Arputham Benjamin <abenjamin@sgi.com> Signed-off-by: Roland Dreier <rolandd@cisco.com>
This commit is contained in:
parent
ffe063f32b
commit
d94a868901
@ -829,27 +829,34 @@ int mthca_init_eq_table(struct mthca_dev *dev)
|
||||
|
||||
if (dev->mthca_flags & MTHCA_FLAG_MSI_X) {
|
||||
static const char *eq_name[] = {
|
||||
[MTHCA_EQ_COMP] = DRV_NAME " (comp)",
|
||||
[MTHCA_EQ_ASYNC] = DRV_NAME " (async)",
|
||||
[MTHCA_EQ_CMD] = DRV_NAME " (cmd)"
|
||||
[MTHCA_EQ_COMP] = DRV_NAME "-comp",
|
||||
[MTHCA_EQ_ASYNC] = DRV_NAME "-async",
|
||||
[MTHCA_EQ_CMD] = DRV_NAME "-cmd"
|
||||
};
|
||||
|
||||
for (i = 0; i < MTHCA_NUM_EQ; ++i) {
|
||||
snprintf(dev->eq_table.eq[i].irq_name,
|
||||
IB_DEVICE_NAME_MAX,
|
||||
"%s@pci:%s", eq_name[i],
|
||||
pci_name(dev->pdev));
|
||||
err = request_irq(dev->eq_table.eq[i].msi_x_vector,
|
||||
mthca_is_memfree(dev) ?
|
||||
mthca_arbel_msi_x_interrupt :
|
||||
mthca_tavor_msi_x_interrupt,
|
||||
0, eq_name[i], dev->eq_table.eq + i);
|
||||
0, dev->eq_table.eq[i].irq_name,
|
||||
dev->eq_table.eq + i);
|
||||
if (err)
|
||||
goto err_out_cmd;
|
||||
dev->eq_table.eq[i].have_irq = 1;
|
||||
}
|
||||
} else {
|
||||
snprintf(dev->eq_table.eq[0].irq_name, IB_DEVICE_NAME_MAX,
|
||||
DRV_NAME "@pci:%s", pci_name(dev->pdev));
|
||||
err = request_irq(dev->pdev->irq,
|
||||
mthca_is_memfree(dev) ?
|
||||
mthca_arbel_interrupt :
|
||||
mthca_tavor_interrupt,
|
||||
IRQF_SHARED, DRV_NAME, dev);
|
||||
IRQF_SHARED, dev->eq_table.eq[0].irq_name, dev);
|
||||
if (err)
|
||||
goto err_out_cmd;
|
||||
dev->eq_table.have_irq = 1;
|
||||
|
@ -113,6 +113,7 @@ struct mthca_eq {
|
||||
int nent;
|
||||
struct mthca_buf_list *page_list;
|
||||
struct mthca_mr mr;
|
||||
char irq_name[IB_DEVICE_NAME_MAX];
|
||||
};
|
||||
|
||||
struct mthca_av;
|
||||
|
Loading…
Reference in New Issue
Block a user