aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorkfraser@localhost.localdomain <kfraser@localhost.localdomain>2007-08-31 15:43:28 +0100
committerkfraser@localhost.localdomain <kfraser@localhost.localdomain>2007-08-31 15:43:28 +0100
commit0269e41669edc4998b37a17202a0f87346ed2df7 (patch)
treecfea56920864f010e95444e9113a83073328eed0 /tools
parent399280a99d0fc01dd713690c2632b0718ffc0a00 (diff)
downloadxen-0269e41669edc4998b37a17202a0f87346ed2df7.tar.gz
xen-0269e41669edc4998b37a17202a0f87346ed2df7.tar.bz2
xen-0269e41669edc4998b37a17202a0f87346ed2df7.zip
libxenctrl: xc_destroy_domain() handles EAGAIN.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Diffstat (limited to 'tools')
-rw-r--r--tools/libxc/xc_domain.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/tools/libxc/xc_domain.c b/tools/libxc/xc_domain.c
index 4c02079b6d..fdb87f0bd1 100644
--- a/tools/libxc/xc_domain.c
+++ b/tools/libxc/xc_domain.c
@@ -55,10 +55,14 @@ int xc_domain_unpause(int xc_handle,
int xc_domain_destroy(int xc_handle,
uint32_t domid)
{
+ int ret;
DECLARE_DOMCTL;
domctl.cmd = XEN_DOMCTL_destroydomain;
domctl.domain = (domid_t)domid;
- return do_domctl(xc_handle, &domctl);
+ do {
+ ret = do_domctl(xc_handle, &domctl);
+ } while ( ret && (errno == EAGAIN) );
+ return ret;
}
int xc_domain_shutdown(int xc_handle,