VMX: use a single, global APIC access page
authorJan Beulich <jbeulich@suse.com>
Tue, 27 Apr 2021 12:34:59 +0000 (14:34 +0200)
committerJan Beulich <jbeulich@suse.com>
Tue, 27 Apr 2021 12:34:59 +0000 (14:34 +0200)
commit58850b9074d3e7affdf3bc94c84e417ecfa4d165
tree9a1d0c879800cd6a46d39ff29c545648dad89088
parent11e7f0fe72ca0060762d18268e0388731fe8ccb6
VMX: use a single, global APIC access page

The address of this page is used by the CPU only to recognize when to
access the virtual APIC page instead. No accesses would ever go to this
page. It only needs to be present in the (CPU) page tables so that
address translation will produce its address as result for respective
accesses.

By making this page global, we also eliminate the need to refcount it,
or to assign it to any domain in the first place.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Roger Pau Monné <roger.pau@citrix.com>
Reviewed-by: Kevin Tian <kevin.tian@intel.com>
Acked-by: Tim Deegan <tim@xen.org>
xen/arch/x86/hvm/vmx/vmx.c
xen/arch/x86/mm/shadow/set.c
xen/arch/x86/mm/shadow/types.h
xen/include/asm-x86/hvm/vmx/vmcs.h
xen/include/asm-x86/mm.h