diff options
author | Stefano Stabellini <sstabellini@kernel.org> | 2016-04-20 09:15:01 -0400 |
---|---|---|
committer | David Vrabel <david.vrabel@citrix.com> | 2016-05-24 07:58:19 -0400 |
commit | 702f926067d2a4b28c10a3c41a1172dd62d9e735 (patch) | |
tree | 72682eb17139d59c83a66d3fdf03b30c31775c89 /arch/x86/pci/xen.c | |
parent | 971a69db7dc02faaeed325c195f5db5da597cb58 (diff) |
xen/x86: actually allocate legacy interrupts on PV guests
b4ff8389ed14 is incomplete: relies on nr_legacy_irqs() to get the number
of legacy interrupts when actually nr_legacy_irqs() returns 0 after
probe_8259A(). Use NR_IRQS_LEGACY instead.
Signed-off-by: Stefano Stabellini <sstabellini@kernel.org>
CC: stable@vger.kernel.org
Diffstat (limited to 'arch/x86/pci/xen.c')
-rw-r--r-- | arch/x86/pci/xen.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/arch/x86/pci/xen.c b/arch/x86/pci/xen.c index beac4dfdade6..349b8ce92bf2 100644 --- a/arch/x86/pci/xen.c +++ b/arch/x86/pci/xen.c | |||
@@ -491,8 +491,11 @@ int __init pci_xen_initial_domain(void) | |||
491 | #endif | 491 | #endif |
492 | __acpi_register_gsi = acpi_register_gsi_xen; | 492 | __acpi_register_gsi = acpi_register_gsi_xen; |
493 | __acpi_unregister_gsi = NULL; | 493 | __acpi_unregister_gsi = NULL; |
494 | /* Pre-allocate legacy irqs */ | 494 | /* |
495 | for (irq = 0; irq < nr_legacy_irqs(); irq++) { | 495 | * Pre-allocate the legacy IRQs. Use NR_LEGACY_IRQS here |
496 | * because we don't have a PIC and thus nr_legacy_irqs() is zero. | ||
497 | */ | ||
498 | for (irq = 0; irq < NR_IRQS_LEGACY; irq++) { | ||
496 | int trigger, polarity; | 499 | int trigger, polarity; |
497 | 500 | ||
498 | if (acpi_get_override_irq(irq, &trigger, &polarity) == -1) | 501 | if (acpi_get_override_irq(irq, &trigger, &polarity) == -1) |