From: Jan Beulich Date: Mon, 19 Jan 2015 10:59:05 +0000 (+0100) Subject: common/memory: fix an XSM error path X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~3916 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=76d4ff26d9647088353acaf4a56388a354a5d6e9;p=xen.git common/memory: fix an XSM error path XENMEM_{in,de}crease_reservation as well as XENMEM_populate_physmap return the extent at which failure was detected, not error indicators. Signed-off-by: Jan Beulich Reviewed-by: Andrew Cooper Acked-by: Daniel De Graaf Acked-by: Tim Deegan --- diff --git a/xen/common/memory.c b/xen/common/memory.c index 234dae62fe..e84ace99a5 100644 --- a/xen/common/memory.c +++ b/xen/common/memory.c @@ -747,11 +747,10 @@ long do_memory_op(unsigned long cmd, XEN_GUEST_HANDLE_PARAM(void) arg) return start_extent; args.domain = d; - rc = xsm_memory_adjust_reservation(XSM_TARGET, current->domain, d); - if ( rc ) + if ( xsm_memory_adjust_reservation(XSM_TARGET, current->domain, d) ) { rcu_unlock_domain(d); - return rc; + return start_extent; } switch ( op )