[prev in list] [next in list] [prev in thread] [next in thread]
List: xen-cvs
Subject: [Xen-changelog] [xen stable-4.6] x86/vPMU: do not clobber IA32_MISC_ENABLE
From: patchbot () xen ! org
Date: 2016-03-20 13:33:02
Message-ID: E1ahdTa-0007Pk-CQ () xenbits ! xenproject ! org
[Download RAW message or body]
commit dc8c86bb9771843c9cd63c9240b642e8905ad968
Author: Andrew Cooper <andrew.cooper3@citrix.com>
AuthorDate: Fri Mar 18 08:04:12 2016 +0100
Commit: Jan Beulich <jbeulich@suse.com>
CommitDate: Fri Mar 18 08:04:12 2016 +0100
x86/vPMU: do not clobber IA32_MISC_ENABLE
The VMX RDMSR intercept for MSR_IA32_MISC_ENABLE falls through into
vpmu_do_rdmsr(), so that core2_vpmu_do_rdmsr() may play with the PTS and PEBS
UNAVAIL bits.
Some 64bit Windows include IA32_MISC_ENABLE in the set of items checked by
PatchGuard, and will suffer a BSOD 0x109 CRITICAL_STRUCTURE_CORRUPTION if the
contents change on migrate.
The vPMU infrastructure should not clobber IA32_MISC_ENABLE at all.
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
master commit: 0aa1330aac92fd75f185c9b354396014178fe95d
master date: 2016-03-07 17:46:25 +0100
---
xen/arch/x86/cpu/vpmu.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/xen/arch/x86/cpu/vpmu.c b/xen/arch/x86/cpu/vpmu.c
index d870dcc..48b2bc0 100644
--- a/xen/arch/x86/cpu/vpmu.c
+++ b/xen/arch/x86/cpu/vpmu.c
@@ -140,7 +140,7 @@ int vpmu_do_msr(unsigned int msr, uint64_t *msr_content,
return ret;
nop:
- if ( !is_write )
+ if ( !is_write && (msr != MSR_IA32_MISC_ENABLE) )
*msr_content = 0;
return 0;
--
generated by git-patchbot for /home/xen/git/xen.git#stable-4.6
_______________________________________________
Xen-changelog mailing list
Xen-changelog@lists.xen.org
http://lists.xensource.com/xen-changelog
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic