From d9d267052215f223897af18310e4adee310308e7 Mon Sep 17 00:00:00 2001 From: Sergey Poznyakoff Date: Sun, 31 Jan 2016 16:40:27 +0200 Subject: Support sysvinit ondemand components. * src/ctl.c (fun_start): Handle status_finished same as status_sleeping (for restarting ondemand components). * src/progman.c: Respawn ondemand components. * src/sysvinit.c (enablecomp): Handle pies_comp_ondemand. (sysvinit_demand): New function. (sysvinit_fifo_handler): Handle ondemand runlevels. (inittab_parse): Support "off" fields. Convert runlevels to upper case. --- src/progman.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'src/progman.c') diff --git a/src/progman.c b/src/progman.c index 4ca3824..020dccd 100644 --- a/src/progman.c +++ b/src/progman.c @@ -303,9 +303,9 @@ progman_waiting_p () { if (IS_COMPONENT (prog) && prog->v.p.wait && prog->pid > 0) { - debug(1, ("%s: waiting for %s (%lu)", - __FUNCTION__, prog_tag (prog), - (unsigned long) prog->pid)); + debug (3, ("%s: waiting for %s (%lu)", + __FUNCTION__, prog_tag (prog), + (unsigned long) prog->pid)); return 1; } } @@ -2305,7 +2305,8 @@ progman_cleanup (int expect_term) } else { - if (prog->v.p.comp->mode >= pies_mark_sysvinit) + if (prog->v.p.comp->mode >= pies_mark_sysvinit + && prog->v.p.comp->mode != pies_comp_ondemand) { sysvinit_acct (SYSV_ACCT_PROC_STOP, "", prog_tag (prog), pid, ""); -- cgit v1.2.1