KVM: x86: Fix probable memory leak of vcpu->arch.mce_banks
authorWei Yongjun <yjwei@cn.fujitsu.com>
Fri, 22 Jan 2010 06:18:47 +0000 (14:18 +0800)
committerGreg Kroah-Hartman <gregkh@suse.de>
Thu, 28 Jan 2010 23:02:47 +0000 (15:02 -0800)
commit 36cb93fd6b6bf7e9163a69a8bf20207aed5fea44 upstream.

vcpu->arch.mce_banks is malloc in kvm_arch_vcpu_init(), but
never free in any place, this may cause memory leak. So this
patch fixed to free it in kvm_arch_vcpu_uninit().

Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com>
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
arch/x86/kvm/x86.c

index 97b31fa63088aa06304d3165e4ab6b1ea862e934..1bd161ed168a70e185e2eff03b001ac41b135425 100644 (file)
@@ -4782,6 +4782,7 @@ fail:
 
 void kvm_arch_vcpu_uninit(struct kvm_vcpu *vcpu)
 {
+       kfree(vcpu->arch.mce_banks);
        kvm_free_lapic(vcpu);
        down_read(&vcpu->kvm->slots_lock);
        kvm_mmu_destroy(vcpu);