From 420bd9be17b480d8c2e1c9897bfd3a42d209c8e5 Mon Sep 17 00:00:00 2001 From: George Dunlap Date: Mon, 23 Sep 2013 16:27:39 +0200 Subject: VMX: fix failure path in construct_vmcs If the allocation fails, make sure to call vmx_vmcs_exit(). This is a candidate for backport. Signed-off-by: George Dunlap Signed-off-by: Mukesh Rathor master commit: dad7e45bf44c0569546a3ed7d0fa4182a4a73f0a master date: 2013-09-18 14:45:42 +0200 --- xen/arch/x86/hvm/vmx/vmcs.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/xen/arch/x86/hvm/vmx/vmcs.c b/xen/arch/x86/hvm/vmx/vmcs.c index 759718fab2..6ef9739bfd 100644 --- a/xen/arch/x86/hvm/vmx/vmcs.c +++ b/xen/arch/x86/hvm/vmx/vmcs.c @@ -894,7 +894,10 @@ static int construct_vmcs(struct vcpu *v) unsigned long *msr_bitmap = alloc_xenheap_page(); if ( msr_bitmap == NULL ) + { + vmx_vmcs_exit(v); return -ENOMEM; + } memset(msr_bitmap, ~0, PAGE_SIZE); v->arch.hvm_vmx.msr_bitmap = msr_bitmap; -- cgit v1.2.3