projects
/
project
/
procd.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
fix up watchdog init code
[project/procd.git]
/
state.c
diff --git
a/state.c
b/state.c
index
1abcbca
..
71890a2
100644
(file)
--- a/
state.c
+++ b/
state.c
@@
-46,10
+46,14
@@
static void state_enter(void)
break;
case STATE_INIT:
break;
case STATE_INIT:
+ // check if the wdt appeared during coldplug
+ if (!watchdog_fd())
+ watchdog_init();
LOG("- init -\n");
log_init();
procd_connect_ubus();
procd_inittab();
LOG("- init -\n");
log_init();
procd_connect_ubus();
procd_inittab();
+ procd_inittab_run("respawn");
procd_inittab_run("askconsole");
procd_inittab_run("askfirst");
procd_inittab_run("sysinit");
procd_inittab_run("askconsole");
procd_inittab_run("askfirst");
procd_inittab_run("sysinit");
@@
-62,12
+66,11
@@
static void state_enter(void)
case STATE_SHUTDOWN:
LOG("- shutdown -\n");
procd_inittab_run("shutdown");
case STATE_SHUTDOWN:
LOG("- shutdown -\n");
procd_inittab_run("shutdown");
+ sync();
break;
case STATE_HALT:
break;
case STATE_HALT:
- LOG("- reboot -\nprocd says good bye !\n");
- sync();
- sleep(1);
+ LOG("- reboot -\n");
reboot(reboot_event);
break;
reboot(reboot_event);
break;