diff options
author | Yinghai Lu <yinghai@kernel.org> | 2012-09-17 22:22:29 -0700 |
---|---|---|
committer | Yinghai Lu <yinghai@kernel.org> | 2012-09-17 22:22:29 -0700 |
commit | fc399d209dd64bea4507fc48d184134c3faf5d77 (patch) | |
tree | 1bb029298179906be5b41d487c6c8abaf7205550 | |
parent | 5d00c316e0b140d91f6eba0efef116d22eca1aaa (diff) | |
download | linux-yinghai-fc399d209dd64bea4507fc48d184134c3faf5d77.tar.gz |
x86, irq: Let msi-x to shown as MSI-X in /proc/interrupt
Use new added irq_print_chip() to append -X after MSI for msi-x.
-v2: do not need to check if msi_desc is null in msi_irq_print_chip().
Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Cc: Suresh Siddha <suresh.b.siddha@intel.com>
-rw-r--r-- | arch/x86/kernel/apic/io_apic.c | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c index e6be6ea6950944..fbfd5422dcf883 100644 --- a/arch/x86/kernel/apic/io_apic.c +++ b/arch/x86/kernel/apic/io_apic.c @@ -2570,7 +2570,10 @@ static void ir_ack_apic_level(struct irq_data *data) static void ir_print_prefix(struct irq_data *data, struct seq_file *p) { - seq_printf(p, " IR-%s", data->chip->name); + seq_printf(p, " IR-%s%s", data->chip->name, + data->msi_desc ? + (data->msi_desc->msi_attrib.is_msix ? "-X" : "") + : ""); } static void irq_remap_modify_chip_defaults(struct irq_chip *chip) @@ -3133,6 +3136,12 @@ msi_set_affinity(struct irq_data *data, const struct cpumask *mask, bool force) return IRQ_SET_MASK_OK_NOCOPY; } +static void msi_irq_print_chip(struct irq_data *data, struct seq_file *p) +{ + seq_printf(p, " %s%s", data->chip->name, + data->msi_desc->msi_attrib.is_msix ? "-X" : ""); +} + /* * IRQ Chip for MSI PCI/PCI-X/PCI-Express Devices, * which implement the MSI or MSI-X Capability Structure. @@ -3144,6 +3153,7 @@ static struct irq_chip msi_chip = { .irq_ack = ack_apic_edge, .irq_set_affinity = msi_set_affinity, .irq_retrigger = ioapic_retrigger_irq, + .irq_print_chip = msi_irq_print_chip, }; static int setup_msi_irq(struct pci_dev *dev, struct msi_desc *msidesc, int irq) |