svm: Manage vcpu load/unload when enable AVIC
authorSuravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Wed, 4 May 2016 19:09:52 +0000 (14:09 -0500)
committerPaolo Bonzini <pbonzini@redhat.com>
Wed, 18 May 2016 16:04:31 +0000 (18:04 +0200)
commit8221c13700561b36fb1bfda583888cbb43b572f0
tree28e7aabd358ede31f1115fe78ae3e9f75ccdc8e8
parent3bbf3565f48ce3999b5a12cde946f81bd4475312
svm: Manage vcpu load/unload when enable AVIC

When a vcpu is loaded/unloaded to a physical core, we need to update
host physical APIC ID information in the Physical APIC-ID table
accordingly.

Also, when vCPU is blocking/un-blocking (due to halt instruction),
we need to make sure that the is-running bit in set accordingly in the
physical APIC-ID table.

Signed-off-by: Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
Reviewed-by: Radim Krčmář <rkrcmar@redhat.com>
[Return void from new functions, add WARN_ON when they returned negative
 errno; split load and put into separate function as they have almost
 nothing in common. - Paolo]
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/svm.c