danos/system/services
Daniel Samson a01a4f3b3d
init: restart a crashed boot service
init supervises its boot services (spawned against an exit endpoint) but the
child-exit handler was `if (got.isNotification()) continue;` — it silently
dropped a dead service. Now init restarts it: on a child-exit notification it
finds the service, and unless it exited cleanly (chose to stop) or has hit the
crash-loop cap (maximum_restarts), respawns it and logs the death + reason. The
reincarnation half of resilience (docs/resilience.md) at the service level, the
counterpart to the device manager's driver restarts. A `shutting_down` flag
skips restarts during the orderly stop sequence, whose child deaths are expected.
2026-07-14 09:05:10 +01:00
..
acpi acpi: stop parsing AML in the kernel; power management is userspace's 2026-07-13 23:09:30 +01:00
args-echo Pass arguments to main via runtime.process.Init, dispatched on signature 2026-07-11 14:22:48 +01:00
block fat/usb-storage: flush the device cache on close so writes survive power-off 2026-07-13 23:29:15 +01:00
crash-test The device manager supervises: hello, backoff, and the crash-loop cap (M18.1) 2026-07-13 00:19:30 +01:00
device-list The application surface: enumerate, subscribe, and device-list (M18.3) 2026-07-13 00:49:03 +01:00
device-manager USB driver stack: xHCI transfers, HID keyboard/mouse, mass storage 2026-07-13 14:11:00 +01:00
display display: layer client API + the display-demo client (D4) 2026-07-14 01:56:37 +01:00
display-demo display: layer client API + the display-demo client (D4) 2026-07-14 01:56:37 +01:00
fat fat/usb-storage: flush the device cache on close so writes survive power-off 2026-07-13 23:29:15 +01:00
fdt Add runtime.time, drop demo drivers, harden TSC timekeeping 2026-07-13 11:56:43 +01:00
init init: restart a crashed boot service 2026-07-14 09:05:10 +01:00
input fix / debug 2026-07-13 05:41:05 +01:00
input-source Generalize input module to mouse and joystick/gamepad events 2026-07-11 15:21:09 +01:00
input-test Generalize input module to mouse and joystick/gamepad events 2026-07-11 15:21:09 +01:00
log-flush Phase 2a: FAT engine mutations + O_TRUNC (fix the overwrite corruption) 2026-07-13 20:02:01 +01:00
power Add runtime.time, drop demo drivers, harden TSC timekeeping 2026-07-13 11:56:43 +01:00
process-test The application surface: enumerate, subscribe, and device-list (M18.3) 2026-07-13 00:49:03 +01:00
vfs Phase 2d (ii): filesystem modification time (mtime) 2026-07-13 20:43:40 +01:00