KVM: x86: use hardware-compatible format for APIC ID register
authorRadim Krčmář <rkrcmar@redhat.com>
Tue, 12 Jul 2016 20:09:22 +0000 (22:09 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 14 Jul 2016 07:03:54 +0000 (09:03 +0200)
commita92e2543d6a8653a8ab45cf5df7ef07dafcf3f3e
treec3489b65740c2948918a53b08a1718c5c4771d9e
parent3159d36ad799a117eb2f898de4c6b7777e4dc045
KVM: x86: use hardware-compatible format for APIC ID register

We currently always shift APIC ID as if APIC was in xAPIC mode.
x2APIC mode wants to use more bits and storing a hardware-compabible
value is the the sanest option.

KVM API to set the lapic expects that bottom 8 bits of APIC ID are in
top 8 bits of APIC_ID register, so the register needs to be shifted in
x2APIC mode.

Signed-off-by: Radim Krčmář <rkrcmar@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/lapic.c
arch/x86/kvm/lapic.h
arch/x86/kvm/x86.c