]> git.baikalelectronics.ru Git - kernel.git/commit
x86/kvm: don't forget to ACK async PF IRQ
authorVitaly Kuznetsov <vkuznets@redhat.com>
Tue, 8 Sep 2020 13:53:50 +0000 (15:53 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Sat, 12 Sep 2020 06:22:21 +0000 (02:22 -0400)
commit641682376ba18f4235a4489e5a6248b51fe7952c
tree455b641ac6c9fc3491cd4baba2de953db5d6ecff
parentf58759f8d92e8bd50d1b0a496957424bd7017855
x86/kvm: don't forget to ACK async PF IRQ

Merge commit c0f3637a5a6a3 ("Merge branch 'kvm-async-pf-int' into HEAD")
tried to adapt the new interrupt based async PF mechanism to the newly
introduced IDTENTRY magic but unfortunately it missed the fact that
DEFINE_IDTENTRY_SYSVEC() doesn't call ack_APIC_irq() on its own and
all DEFINE_IDTENTRY_SYSVEC() users have to call it manually.

As the result all multi-CPU KVM guest hang on boot when
KVM_FEATURE_ASYNC_PF_INT is present. The breakage went unnoticed because no
KVM userspace (e.g. QEMU) currently set it (and thus async PF mechanism
is currently disabled) but we're about to change that.

Fixes: c0f3637a5a6a3 ("Merge branch 'kvm-async-pf-int' into HEAD")
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Message-Id: <20200908135350.355053-3-vkuznets@redhat.com>
Tested-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kernel/kvm.c