This patch series aims to make the msr intercept handling, performed in vpmu code, virtualization technology agnostic. It creates a common interface for setting/clearing the msr intercepts and then add hooks to the corresponding hvm_funcs table to be able to call the svm/vmx specific handlers through a generic hvm wrapper function.
Xenia Ragiadakou (4): x86/vpmu: rename {svm,vmx}_vpmu_initialise to {amd,core2}_vpmu_initialise x86/svm: split svm_intercept_msr() into svm_{set,clear}_msr_intercept() x86/vmx: replace enum vmx_msr_intercept_type with the msr access flags x86/hvm: create hvm_funcs for {svm,vmx}_{set,clear}_msr_intercept() xen/arch/x86/cpu/vpmu_amd.c | 15 ++--- xen/arch/x86/cpu/vpmu_intel.c | 30 +++++----- xen/arch/x86/hvm/svm/svm.c | 80 ++++++++++++++++--------- xen/arch/x86/hvm/vmx/vmcs.c | 38 ++++++------ xen/arch/x86/hvm/vmx/vmx.c | 46 +++++++------- xen/arch/x86/include/asm/hvm/hvm.h | 32 ++++++++++ xen/arch/x86/include/asm/hvm/svm/vmcb.h | 13 ++-- xen/arch/x86/include/asm/hvm/vmx/vmcs.h | 14 +---- 8 files changed, 156 insertions(+), 112 deletions(-) -- 2.37.2