diff options
author | Stefano Stabellini <sstabellini@kernel.org> | 2016-04-20 14:15:01 +0100 |
---|---|---|
committer | Sasha Levin <sasha.levin@oracle.com> | 2016-06-06 19:12:34 -0400 |
commit | 1cf63e8af115eb4bb83d28528d16e62c1d6cfa4f (patch) | |
tree | d46a76a3f2c8448393fff8e0f1090b7872c0a376 | |
parent | 448691a78243ae617a77689847a5c2232939fbc4 (diff) | |
download | linux-exynos-1cf63e8af115eb4bb83d28528d16e62c1d6cfa4f.tar.gz linux-exynos-1cf63e8af115eb4bb83d28528d16e62c1d6cfa4f.tar.bz2 linux-exynos-1cf63e8af115eb4bb83d28528d16e62c1d6cfa4f.zip |
xen/x86: actually allocate legacy interrupts on PV guests
[ Upstream commit 702f926067d2a4b28c10a3c41a1172dd62d9e735 ]
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
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
-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 d22f4b5bbc04..6b8b1073d9ec 100644 --- a/arch/x86/pci/xen.c +++ b/arch/x86/pci/xen.c @@ -488,8 +488,11 @@ int __init pci_xen_initial_domain(void) #endif __acpi_register_gsi = acpi_register_gsi_xen; __acpi_unregister_gsi = NULL; - /* Pre-allocate legacy irqs */ - for (irq = 0; irq < nr_legacy_irqs(); irq++) { + /* + * Pre-allocate the legacy IRQs. Use NR_LEGACY_IRQS here + * because we don't have a PIC and thus nr_legacy_irqs() is zero. + */ + for (irq = 0; irq < NR_IRQS_LEGACY; irq++) { int trigger, polarity; if (acpi_get_override_irq(irq, &trigger, &polarity) == -1) |