From 03c08d3970053254cb1c2dd68e72de640cc44a2d Mon Sep 17 00:00:00 2001 From: Joachim Wiberg Date: Mon, 5 Sep 2022 13:47:08 +0200 Subject: [PATCH] Refactor, enter main event loop earlier This delays the start of the .conf monitor and service initialization slightly to allow the event loop to run earlier to process any events from the initial setup. Signed-off-by: Joachim Wiberg --- src/finit.c | 22 +++++++++++----------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/finit.c b/src/finit.c index d8b251c7..2dbeb155 100644 --- a/src/finit.c +++ b/src/finit.c @@ -580,6 +580,17 @@ static void bootstrap_worker(void *work) static int cnt = 120 * 10; /* We run with 100ms period */ int level = cfglevel; + /* + * Set up inotify watcher for /etc/finit.conf, /etc/finit.d, and + * their deps, to figure out how to bootstrap the system. + */ + conf_monitor(); + + /* + * Background service tasks + */ + service_init(); + _d("Step all services ..."); service_step_all(SVC_TYPE_ANY); @@ -821,12 +832,6 @@ int main(int argc, char *argv[]) _d("Base FS up, calling hooks ..."); plugin_run_hooks(HOOK_BASEFS_UP); - /* - * Set up inotify watcher for /etc/finit.conf, /etc/finit.d, and - * their deps, to figure out how to bootstrap the system. - */ - conf_monitor(); - _d("Starting initctl API responder ..."); api_init(&loop); @@ -836,11 +841,6 @@ int main(int argc, char *argv[]) _d("Starting bootstrap finalize timer ..."); schedule_work(&bootstrap_work); - /* - * Background service tasks - */ - service_init(); - /* * Enter main loop to monitor /dev/initctl and services */