From: Davin McCall Date: Tue, 27 Jun 2017 23:10:44 +0000 (+0100) Subject: TODO: update X-Git-Tag: v0.06~32 X-Git-Url: https://git.librecmc.org/?a=commitdiff_plain;h=26f459bfc2e37ec168a1722954a251a99eab6268;p=oweals%2Fdinit.git TODO: update --- diff --git a/TODO b/TODO index 9dbd40c..95eb237 100644 --- a/TODO +++ b/TODO @@ -14,11 +14,15 @@ For version 1.0: of code where it may be missing - check TODO's in code). * Write wtmp entry on startup (see simpleinit) * Allow running services as a different UID -* Must be able to specify kill timeout (after which kill -9!) * "triggered" service type: external process notifies Dinit when the service has started. * Ability to reload stopped services (reload service description) - +* Some way to specify environment (perhaps a common environment for all + processes) +* Load services from several different directories, with an order of precedence, + to allow for packaged service descriptions and user-modified service + descriptions. +* Linux: use prctl with PR_SET_CHILD_SUBREAPER For later: ---------- @@ -40,7 +44,8 @@ For later: script with a signal (and return the service to the STOPPED state). So a long- running filesystem check, for instance, need not hold up shutdown. * When we take down a service or tty session, it would be ideal if we could kill - the whole process tree, not just the leader process. + the whole process tree, not just the leader process (need cgroups or pid + namespace or other mechanism). * Investigate using cn_proc netlink connector (cn_proc.h) to receive process termination events even when running with PID != 1 (Linux only). Also, there is the possibility of having a small, simple PID-1 init which