|

Runtime zygctl single/multi leave services unstartable (gated) #6

New Chris Tusa opened this issue 13 days ago
Chris Tusa opened this issue 13 days ago

Former local file: bugs/017-runtime-runlevel-transition-leaves-nothing-running.md.

Status

Gated, not fixed. zygctl single / zygctl multi (and init <N> via sysv-wrapper) refuse with an error instead of half-transitioning. The underlying defect remains: mark_runlevel_filtered puts a service in STATE_INACTIVE, and Phase A of start_services_by_tier only starts STATE_WAITING. A service stopped by a runtime transition never returns to a startable state.

Recovery: boot -s (works) or reboot into the desired runlevel.

Hardware

Measured on hh-alpha9, zyginit 0.4.0: runtime zygctl single left 0 services running (was 14), no recovery shell; zygctl multi recovered nothing. mode = always oneshots are not stopped by the transition (earlier report of that was withdrawn).

Blocker for a real fix

Decide what a runlevel-filtered dependency means if X requires Y and Y is not in this runlevel: (a) satisfied like SKIPPED, (b) filter X too, (c) fail X (today). Wrong choice recreates a dependency cascade on PID 1. See ROADMAP.md (Near Term — runtime runlevel transitions).

Assignees

No assignees

Labels

No labels

Severity

High