OSDN Git Service

KVM: SVM: Fix potential wrong physical id in avic_handle_ldr_update
authorMiaohe Lin <linmiaohe@huawei.com>
Fri, 18 Oct 2019 02:50:31 +0000 (10:50 +0800)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 22 Oct 2019 16:47:50 +0000 (18:47 +0200)
commit5c94ac5d0f9e3c8791d1686e0bf22a2a341d1597
tree293779223b4f869c256b8548a7ea3cc9e1b18348
parent20baa8e515a55dc7467d9584cc458b5700c0a3aa
KVM: SVM: Fix potential wrong physical id in avic_handle_ldr_update

Guest physical APIC ID may not equal to vcpu->vcpu_id in some case.
We may set the wrong physical id in avic_handle_ldr_update as we
always use vcpu->vcpu_id. Get physical APIC ID from vAPIC page
instead.
Export and use kvm_xapic_id here and in avic_handle_apic_id_update
as suggested by Vitaly.

Signed-off-by: Miaohe Lin <linmiaohe@huawei.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/lapic.c
arch/x86/kvm/lapic.h
arch/x86/kvm/svm.c