From: Tetsu Yamamoto <tyamamot@redhat.com> Date: Mon, 21 Jan 2008 20:48:35 -0500 Subject: [ia64] xen: create 100GB mem guest, fix softlockup#2 Message-id: 20080121165220.15518.62022.sendpatchset@dhcp83-164.boston.redhat.com O-Subject: [RHEL5.2 PATCH 4/4][Take2] Cannot create guest having 100GB memory on Xen-ia64 Bugzilla: 251353 # HG changeset patch # User yamahata@xxxxxxxxxxxxx # Date 1186648381 -32400 # Node ID b28786127bf9a973f8b8ac1f47ec469012c1d168 # Parent 840b9df48b6a4f0f569963dba01885bde2946b6b prevent soft lockup when domain destroy. linux part. repeat domain destroy hypercall until success. PATCHNAME: prevent_soft_lockup_linux_part Signed-off-by: Isaku Yamahata <yamahata@xxxxxxxxxxxxx> Acked-by: Bill Burns <bburns@redhat.com> Acked-by: "Stephen C. Tweedie" <sct@redhat.com> diff --git a/arch/ia64/xen/xcom_privcmd.c b/arch/ia64/xen/xcom_privcmd.c index c80ea23..d950b17 100644 --- a/arch/ia64/xen/xcom_privcmd.c +++ b/arch/ia64/xen/xcom_privcmd.c @@ -384,7 +384,13 @@ xencomm_privcmd_domctl(privcmd_hypercall_t *hypercall) return ret; } - ret = xencomm_arch_hypercall_domctl (op_desc); + ret = xencomm_arch_hypercall_domctl(op_desc); + if (kern_op.cmd == XEN_DOMCTL_destroydomain) { + while (ret == -EAGAIN) { + schedule(); /* prevent softlock up message */ + ret = xencomm_arch_hypercall_domctl(op_desc); + } + } /* FIXME: should we restore the handle? */ if (copy_to_user(user_op, &kern_op, sizeof(xen_domctl_t)))