Patch "xen/events: Always allocate legacy interrupts on PV guests" has been added to the 4.3-stable tree
Subsystems (4)
This is a note to let you know that I've just added the patch titled
xen/events: Always allocate legacy interrupts on PV guests
to the 4.3-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
xen-events-always-allocate-legacy-interrupts-on-pv-guests.patch
and it can be found in the queue-4.3 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
b4ff8389ed14b849354b59ce9b360bdefcdbf99cMon Sep 17 00:00:00 2001
From: Boris Ostrovsky <[email protected]>
Date: Fri, 20 Nov 2015 11:25:04 -0500
Subject: xen/events: Always allocate legacy interrupts on PV guests
From: Boris Ostrovsky <[email protected]>
commit b4ff8389ed14b849354b59ce9b360bdefcdbf99c upstream.
After commit 8c058b0b9c34 ("x86/irq: Probe for PIC presence before allocating descs for legacy IRQs") early_irq_init() will no longer preallocate descriptors for legacy interrupts if PIC does not exist, which is the case for Xen PV guests.
Therefore we may need to allocate those descriptors ourselves.
--- arch/arm/include/asm/irq.h | 5 +++++ arch/arm64/include/asm/irq.h | 5 +++++ drivers/xen/events/events_base.c | 5 +++-- 3 files changed, 13 insertions(+), 2 deletions(-)
arch/arm/include/asm/irq.h +5 -0
@@ -40,6 +40,11 @@ extern void arch_trigger_all_cpu_backtra#define arch_trigger_all_cpu_backtrace (x) arch_trigger_all_cpu_backtrace(x)#endif +static inline int nr_legacy_irqs (void ) +{ +return NR_IRQS_LEGACY ; +} +#endif #endif
arch/arm64/include/asm/irq.h +5 -0
@@ -21,4 +21,9 @@ static inline void acpi_irq_init(void) }#define acpi_irq_init acpi_irq_init +static inline int nr_legacy_irqs (void ) +{ +return 0 ; +} +#endif
drivers/xen/events/events_base.c +3 -2
@@ -39,6 +39,7 @@#include <asm/irq.h> #include <asm/idle.h> #include <asm/io_apic.h> +#include <asm/i8259.h> #include <asm/xen/pci.h> #include <xen/page.h> #endif
@@ -420,7 +421,7 @@ static int __must_check xen_allocate_irqreturn xen_allocate_irq_dynamic ();/* Legacy IRQ descriptors are already allocated by the arch. */ -if (gsi <NR_IRQS_LEGACY ) +if (gsi <nr_legacy_irqs ()) irq = gsi;else irq =irq_alloc_desc_at (gsi,-1 );
@@ -446,7 +447,7 @@ static void xen_free_irq(unsigned irq)kfree (info);/* Legacy IRQ descriptors are managed by the arch. */ -if (irq <NR_IRQS_LEGACY ) +if (irq <nr_legacy_irqs ())return ;irq_free_desc (irq);
Patches currently in stable-queue which might be from [email protected] are
queue-4.3/xen-events-always-allocate-legacy-interrupts-on-pv-guests.patch queue-4.3/x86-cpu-fix-smap-check-in-pvops-environments.patch