From: Tamas K Lengyel Date: Mon, 28 Jul 2014 13:14:43 +0000 (+0200) Subject: x86/mem_event: fix regression affecting CR0 memory events X-Git-Tag: 4.2.5-rc2~3 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=48b7f833834644d0f6a08c9234393ed06ddddb1f;p=xen.git x86/mem_event: fix regression affecting CR0 memory events This is a patch repairing a regression in code previously functional in 4.1.x. It appears that, during some refactoring work, call to hvm_memory_event_cr0 was lost. This function was originally called in mov_to_cr() of vmx.c, but the commit http://xenbits.xen.org/hg/xen-unstable.hg/rev/1276926e3795 abstracted the original code into generic functions up a level in hvm.c, dropping the call in the process. The same issue affected the CR3 and CR4 events, which were fixed in patch http://xenbits.xensource.com/hg/xen-unstable.hg/rev/7ab899e46347. Signed-off-by: Tamas K Lengyel Reviewed-by: Tim Deegan master commit: 5d570c1d0274cac3b333ef378af3325b3b69905e master date: 2014-07-23 18:05:11 +0200 --- diff --git a/xen/arch/x86/hvm/hvm.c b/xen/arch/x86/hvm/hvm.c index 7d4b0b390c..8959a54191 100644 --- a/xen/arch/x86/hvm/hvm.c +++ b/xen/arch/x86/hvm/hvm.c @@ -1788,6 +1788,7 @@ int hvm_set_cr0(unsigned long value) v->arch.hvm_vcpu.guest_cr[0] = value; hvm_update_guest_cr(v, 0); + hvm_memory_event_cr0(value, old_value); if ( (value ^ old_value) & X86_CR0_PG ) { if ( !nestedhvm_vmswitch_in_progress(v) && nestedhvm_vcpu_in_guestmode(v) )