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 <jfehlig@novell.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
This commit is contained in:
Jim Fehlig committed 2011-03-10 18:17:16 +00:00
1 parent 44a953192a
commit bea472a7e1
1 file changed
+1
+1
View File
@@ -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);
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.