Follow-up to 18ab7d3: restore start of built-in watchdogd

This patch restores the start of the built-in/bundled watchdogd.  It is
tracked in the `wdog` variable and handled as an exception at shutdown.

This is also a follow-up to 7b74c99, ensuring that we only kill/stop the
built-in watchdog, not any external.  External ones can register to be
the controlling watchdogd in the system -- Finit is not the arbiter for
singletons, this is up to the system engineer.

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg committed 2021-04-19 11:05:07 +02:00
1 parent d82d119729
commit dd437bf0a5
4 files changed
+28 -23

No files matched your search

+8
View File
@@ -549,6 +549,14 @@ int main(int argc, char *argv[])
*/
conf_init(&loop);
/*
* Start built-in watchdogd as soon as possible, if enabled
*/
if (which(FINIT_LIBPATH_ "/watchdogd")) {
service_register(SVC_TYPE_SERVICE, "[123456789] name:watchdog :finit " FINIT_LIBPATH_ "/watchdogd -- Finit watchdog daemon", global_rlimit, NULL);
wdog = svc_find_by_nameid("watchdog", "finit");
}
/* Base FS up, enable standard SysV init signals */
sig_setup(&loop);