From: Jim Meyering Date: Thu, 10 May 2012 16:19:47 +0000 (+0200) Subject: kvm/apic: correct short memset X-Git-Tag: v1.1.1~22 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ca09717e8e0664801522781962a3c727d04eef33;p=thirdparty%2Fqemu.git kvm/apic: correct short memset kvm_put_apic_state's attempt to clear *kapic before setting its bits cleared sizeof(void*) bytes (no more than 8) rather than the intended 1024 (KVM_APIC_REG_SIZE) bytes. Spotted by coverity. Signed-off-by: Jim Meyering Signed-off-by: Avi Kivity (cherry picked from commit 0614cb82ca27bdffb83864e693fc29e29182667b) Signed-off-by: Michael Roth --- diff --git a/hw/kvm/apic.c b/hw/kvm/apic.c index ffe7a521b7f..a0ab503169c 100644 --- a/hw/kvm/apic.c +++ b/hw/kvm/apic.c @@ -29,7 +29,7 @@ void kvm_put_apic_state(DeviceState *d, struct kvm_lapic_state *kapic) APICCommonState *s = DO_UPCAST(APICCommonState, busdev.qdev, d); int i; - memset(kapic, 0, sizeof(kapic)); + memset(kapic, 0, sizeof(*kapic)); kvm_apic_set_reg(kapic, 0x2, s->id << 24); kvm_apic_set_reg(kapic, 0x8, s->tpr); kvm_apic_set_reg(kapic, 0xd, s->log_dest << 24);