x86/nhvm: properly clean up after failure to set up all vCPU-s
authorJan Beulich <jbeulich@suse.com>
Fri, 22 Feb 2013 10:21:38 +0000 (11:21 +0100)
committerJan Beulich <jbeulich@suse.com>
Fri, 22 Feb 2013 10:21:38 +0000 (11:21 +0100)
commit17281aea1a9a10f1ee165c6e6a2921a67b7b1df2
tree285d80f21e8d5efe797cb815f44a6ec9c383d597
parent7f05d3ff7692574f40d0b337d767a216f347dcdb
x86/nhvm: properly clean up after failure to set up all vCPU-s

Otherwise we may leak memory when setting up nHVM fails half way.

This implies that the individual destroy functions will have to remain
capable (in the VMX case they first need to be made so, following
26486:7648ef657fe7 and 26489:83a3fa9c8434) of being called for a vCPU
that the corresponding init function was never run on.

Once at it, also remove a redundant check from the corresponding
parameter validation code.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Tim Deegan <tim@xen.org>
Tested-by: Olaf Hering <olaf@aepfle.de>
xen/arch/x86/hvm/hvm.c
xen/arch/x86/hvm/nestedhvm.c
xen/arch/x86/hvm/vmx/vvmx.c