[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180302130436.uxv7hjruung6m5x7@linutronix.de>
Date: Fri, 2 Mar 2018 14:04:36 +0100
From: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
To: linux-kernel@...r.kernel.org
Cc: x86@...nel.org
Subject: [PATCH] x86/ioapic: Do not unmask io_apic when interrupt is in
progress
From: Ingo Molnar <mingo@...e.hu>
Date: Fri, 3 Jul 2009 08:29:27 -0500
With threaded interrupts we might see an interrupt in progress on
migration. Do not unmask it when this is the case.
Signed-off-by: Ingo Molnar <mingo@...e.hu>
Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
Signed-off-by: Sebastian Andrzej Siewior <bigeasy@...utronix.de>
---
arch/x86/kernel/apic/io_apic.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
--- a/arch/x86/kernel/apic/io_apic.c
+++ b/arch/x86/kernel/apic/io_apic.c
@@ -1690,7 +1690,8 @@ static bool io_apic_level_ack_pending(st
static inline bool ioapic_irqd_mask(struct irq_data *data)
{
/* If we are moving the irq we need to mask it */
- if (unlikely(irqd_is_setaffinity_pending(data))) {
+ if (unlikely(irqd_is_setaffinity_pending(data) &&
+ !irqd_irq_inprogress(data))) {
mask_ioapic_irq(data);
return true;
}
Powered by blists - more mailing lists