xen/26656-x86-fix-null-pointer-dereference-in-intel_get_extended_msrs.patch

23 lines
810 B
Diff
Raw Normal View History

# Commit c40e24a8ef74f9d0ee59dd9b8ca890be08b0b874
# Date 2013-02-25 12:44:25 +0100
# Author Xi Wang <xi@mit.edu>
# Committer Jan Beulich <jbeulich@suse.com>
x86: fix null pointer dereference in intel_get_extended_msrs()
`memset(&mc_ext, 0, ...)' leads to a buffer overflow and a subsequent
null pointer dereference. Replace `&mc_ext' with `mc_ext'.
Signed-off-by: Xi Wang <xi@mit.edu>
--- a/xen/arch/x86/cpu/mcheck/mce_intel.c
+++ b/xen/arch/x86/cpu/mcheck/mce_intel.c
@@ -534,7 +534,7 @@ intel_get_extended_msrs(struct mcinfo_gl
}
/* this function will called when CAP(9).MCG_EXT_P = 1 */
- memset(&mc_ext, 0, sizeof(struct mcinfo_extended));
+ memset(mc_ext, 0, sizeof(*mc_ext));
mc_ext->common.type = MC_TYPE_EXTENDED;
mc_ext->common.size = sizeof(struct mcinfo_extended);