From bccc2f7dd1de97668558a237a4d33bdae779ea08 Mon Sep 17 00:00:00 2001 From: Admin Pupkin Date: Tue, 2 Jun 2026 10:21:05 +0300 Subject: [PATCH] console: fix login prompt by avoiding oneshot scheduler deadlock 29_activate_console: changed from oneshot back to oneshot_async. The oneshot type calls child.wait() which blocks the entire init scheduler. If inputd doesn't drain its control channel promptly, ControlHandle::write() hangs forever, freezing boot. 30_console: added 'sleep 0.2' before 'exec getty 2' to give inputd time to process the VT activation before getty opens /scheme/fbcon/2. Eliminates the race condition without blocking the init scheduler. --- config/redbear-full.toml | 6 +++--- config/redbear-mini.toml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/config/redbear-full.toml b/config/redbear-full.toml index d5da843011..3e4675d1f7 100644 --- a/config/redbear-full.toml +++ b/config/redbear-full.toml @@ -477,7 +477,7 @@ requires_weak = [ [service] cmd = "inputd" args = ["-A", "2"] -type = "oneshot" +type = "oneshot_async" """ [[files]] @@ -490,8 +490,8 @@ requires_weak = [ ] [service] -cmd = "getty" -args = ["2"] +cmd = "sh" +args = ["-c", "sleep 0.2; exec getty 2"] type = "oneshot_async" """ diff --git a/config/redbear-mini.toml b/config/redbear-mini.toml index 0c511aacbc..af6a211ff5 100644 --- a/config/redbear-mini.toml +++ b/config/redbear-mini.toml @@ -504,7 +504,7 @@ requires_weak = ["00_base.target"] [service] cmd = "inputd" args = ["-A", "2"] -type = "oneshot" +type = "oneshot_async" """ [[files]] @@ -516,8 +516,8 @@ default_dependencies = false requires_weak = ["29_activate_console.service"] [service] -cmd = "getty" -args = ["2"] +cmd = "sh" +args = ["-c", "sleep 0.2; exec getty 2"] type = "oneshot_async" """