summaryrefslogtreecommitdiffstats
path: root/target-i386/kvm.c
diff options
context:
space:
mode:
authoraliguori2008-12-13 21:41:58 +0100
committeraliguori2008-12-13 21:41:58 +0100
commit4c9f7372fcf158d8a5d85ce9ce2988c27be63baf (patch)
tree23435f16e571d9e70851f3fb104e7b2a950205d0 /target-i386/kvm.c
parenttarget-sh4: make the initial value of SR easier to read (diff)
downloadqemu-4c9f7372fcf158d8a5d85ce9ce2988c27be63baf.tar.gz
qemu-4c9f7372fcf158d8a5d85ce9ce2988c27be63baf.tar.xz
qemu-4c9f7372fcf158d8a5d85ce9ce2988c27be63baf.zip
Correctly initialize msr list in KVM
I believe this was spotted by Gerd Hoffman but I can't find his patch now. This will cause very subtle corruption on the heap because we don't allocate the appropriately sized buffer. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6017 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-i386/kvm.c')
-rw-r--r--target-i386/kvm.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/target-i386/kvm.c b/target-i386/kvm.c
index 5e051c598c..d8c89ba093 100644
--- a/target-i386/kvm.c
+++ b/target-i386/kvm.c
@@ -90,11 +90,11 @@ static int kvm_has_msr_star(CPUState *env)
/* Obtain MSR list from KVM. These are the MSRs that we must
* save/restore */
+ msr_list.nmsrs = 0;
ret = kvm_ioctl(env->kvm_state, KVM_GET_MSR_INDEX_LIST, &msr_list);
if (ret < 0)
return 0;
- msr_list.nmsrs = 0;
kvm_msr_list = qemu_mallocz(sizeof(msr_list) +
msr_list.nmsrs * sizeof(msr_list.indices[0]));
if (kvm_msr_list == NULL)