From: Jim Fehlig Date: Thu, 10 Mar 2011 18:17:16 +0000 (+0000) Subject: libxl: Call setsid(2) before exec'ing device model X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=bea472a7e1b35effb24fae81fc556fbacd238e05;p=xen.git libxl: Call setsid(2) before exec'ing device model While doing development on libvirt libxenlight driver I noticed that terminating a libxenlight client causes any qemu-dm processes that were indirectly created by the client to also terminate. Calling setsid(2) before exec'ing qemu-dm resolves the issue. Signed-off-by: Jim Fehlig Acked-by: Ian Jackson Acked-by: Stefano Stabellini Committed-by: Ian Jackson --- diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c index bc0bae7a96..d535e11a76 100644 --- a/tools/libxl/libxl_dm.c +++ b/tools/libxl/libxl_dm.c @@ -694,6 +694,7 @@ retry_transaction: if (rc < 0) goto out_close; if (!rc) { /* inner child */ + setsid(); libxl__exec(null, logfile_w, logfile_w, libxl__abs_path(&gc, info->device_model, libxl_libexec_path()), args);