summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorK. Y. Srinivasan <kys@microsoft.com>2017-03-29 02:16:53 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-04-08 18:07:51 +0200
commita33fd4c27b3ad11c66bdadc5fe6075297ca87a6d (patch)
treed79a91c5f115822e1476068be8a213d5ece00dfa
parentfirmware: google memconsole: Add ARM/ARM64 support (diff)
downloadlinux-a33fd4c27b3ad11c66bdadc5fe6075297ca87a6d.tar.xz
linux-a33fd4c27b3ad11c66bdadc5fe6075297ca87a6d.zip
Drivers: hv: Issue explicit EOI when autoeoi is not enabled
When auto EOI is not enabled; issue an explicit EOI for hyper-v interrupts. Fixes: 6c248aad81c8 ("Drivers: hv: Base autoeoi enablement based on hypervisor hints") Signed-off-by: K. Y. Srinivasan <kys@microsoft.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--arch/x86/kernel/cpu/mshyperv.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/kernel/cpu/mshyperv.c b/arch/x86/kernel/cpu/mshyperv.c
index b5375b9497b3..04cb8d34ccb8 100644
--- a/arch/x86/kernel/cpu/mshyperv.c
+++ b/arch/x86/kernel/cpu/mshyperv.c
@@ -49,6 +49,9 @@ void hyperv_vector_handler(struct pt_regs *regs)
if (vmbus_handler)
vmbus_handler();
+ if (ms_hyperv.hints & HV_X64_DEPRECATING_AEOI_RECOMMENDED)
+ ack_APIC_irq();
+
exiting_irq();
set_irq_regs(old_regs);
}