mirror of
https://github.com/xen-project/xen.git
synced 2026-10-29 18:50:05 +01:00
libxl: fork: Document libxl_sigchld_owner_libxl better
libxl_sigchld_owner_libxl ought to have been mentioned in the list of options for chldowner. Since it's the default, move the description of the its behaviour into the description of that option. Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com> Cc: Jim Fehlig <jfehlig@suse.com> Cc: Ian Campbell <Ian.Campbell@citrix.com> Acked-by: Ian Campbell <Ian.Campbell@citrix.com>
This commit is contained in:
1 parent
f9a8c3374e
commit
503a01c292
1 file changed
+19
-8
@@ -442,9 +442,26 @@ void libxl_osevent_occurred_timeout(libxl_ctx *ctx, void *for_libxl)
|
||||
* For programs which run their own children alongside libxl's:
|
||||
*
|
||||
* A program which does this must call libxl_childproc_setmode.
|
||||
* There are two options:
|
||||
* There are three options:
|
||||
*
|
||||
* libxl_sigchld_owner_libxl:
|
||||
*
|
||||
* While any libxl operation which might use child processes
|
||||
* is running, works like libxl_sigchld_owner_libxl_always;
|
||||
* but, deinstalls the handler the rest of the time.
|
||||
*
|
||||
* In this mode, the application, while it uses any libxl
|
||||
* operation which might create or use child processes (see
|
||||
* above):
|
||||
* - Must not have any child processes running.
|
||||
* - Must not install a SIGCHLD handler.
|
||||
* - Must not reap any children.
|
||||
*
|
||||
* This is the default (i.e. if setmode is not called, or 0 is
|
||||
* passed for hooks).
|
||||
*
|
||||
* libxl_sigchld_owner_mainloop:
|
||||
*
|
||||
* The application must install a SIGCHLD handler and reap (at
|
||||
* least) all of libxl's children and pass their exit status to
|
||||
* libxl by calling libxl_childproc_exited. (If the application
|
||||
@@ -452,17 +469,11 @@ void libxl_osevent_occurred_timeout(libxl_ctx *ctx, void *for_libxl)
|
||||
* on each ctx.)
|
||||
*
|
||||
* libxl_sigchld_owner_libxl_always:
|
||||
*
|
||||
* The application expects libxl to reap all of its children,
|
||||
* and provides a callback to be notified of their exit
|
||||
* statues. The application must have only one libxl_ctx
|
||||
* configured this way.
|
||||
*
|
||||
* An application which fails to call setmode, or which passes 0 for
|
||||
* hooks, while it uses any libxl operation which might
|
||||
* create or use child processes (see above):
|
||||
* - Must not have any child processes running.
|
||||
* - Must not install a SIGCHLD handler.
|
||||
* - Must not reap any children.
|
||||
*/
|
||||
|
||||
|
||||
|
||||