x86/xen: use xen_vcpu_id mapping for HYPERVISOR_vcpu_op
authorVitaly Kuznetsov <vkuznets@redhat.com>
Thu, 30 Jun 2016 15:56:38 +0000 (17:56 +0200)
committerDavid Vrabel <david.vrabel@citrix.com>
Mon, 25 Jul 2016 12:32:34 +0000 (13:32 +0100)
commitad5475f9faf5186b7f59de2c6481ee3e211f1ed7
treedc9c373319bc1f1927ce10d8937292c17af217ed
parent88e957d6e47f1232ad15b21e54a44f1147ea8c1b
x86/xen: use xen_vcpu_id mapping for HYPERVISOR_vcpu_op

HYPERVISOR_vcpu_op() passes Linux's idea of vCPU id as a parameter
while Xen's idea is expected. In some cases these ideas diverge so we
need to do remapping.

Convert all callers of HYPERVISOR_vcpu_op() to use xen_vcpu_nr().

Leave xen_fill_possible_map() and xen_filter_cpu_maps() intact as
they're only being called by PV guests before perpu areas are
initialized. While the issue could be solved by switching to
early_percpu for xen_vcpu_id I think it's not worth it: PV guests will
probably never get to the point where their idea of vCPU id diverges
from Xen's.

Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: David Vrabel <david.vrabel@citrix.com>
arch/arm/xen/enlighten.c
arch/x86/xen/enlighten.c
arch/x86/xen/irq.c
arch/x86/xen/smp.c
arch/x86/xen/time.c
drivers/xen/events/events_base.c
drivers/xen/time.c