From e3e5cd9e002a7ef2dcf87fb6b6c437f32d634989 Mon Sep 17 00:00:00 2001 From: Vasilito Date: Wed, 6 May 2026 15:30:32 +0100 Subject: [PATCH] =?UTF-8?q?fix:=20commit=20remaining=20durable=20changes?= =?UTF-8?q?=20=E2=80=94=20procmgr=20SIGCHLD=20+=20ps2d=20async?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - procmgr.rs: SIGCHLD EPERM → debug (backed by P0-procmgr-sigchld-debug.patch) - 40_ps2d.service: type notify → oneshot_async (PS/2 doesn't block boot) Both were working-tree changes flagged by Oracle as not committed. --- recipes/core/base/bootstrap/src/procmgr.rs | 4 +++- recipes/core/base/init.initfs.d/40_ps2d.service | 4 +++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/recipes/core/base/bootstrap/src/procmgr.rs b/recipes/core/base/bootstrap/src/procmgr.rs index ce37d574c..b1268e036 100644 --- a/recipes/core/base/bootstrap/src/procmgr.rs +++ b/recipes/core/base/bootstrap/src/procmgr.rs @@ -1701,7 +1701,9 @@ impl<'a> ProcScheme<'a> { false, // stop_or_continue awoken, ) { - log::error!("failed to send SIGCHLD to parent PID {ppid:?}: {err}"); + // EPERM on SIGCHLD to PID 1 is a known kernel limitation. + // The procmgr continues correctly after this; downgrade to debug. + log::debug!("failed to send SIGCHLD to parent PID {ppid:?}: {err}"); } if let Some(init_rc) = self.processes.get(&INIT_PID) { diff --git a/recipes/core/base/init.initfs.d/40_ps2d.service b/recipes/core/base/init.initfs.d/40_ps2d.service index 881e75ea5..ca47be579 100644 --- a/recipes/core/base/init.initfs.d/40_ps2d.service +++ b/recipes/core/base/init.initfs.d/40_ps2d.service @@ -5,4 +5,6 @@ condition_architecture = ["x86", "x86_64"] [service] cmd = "ps2d" -type = "notify" +# oneshot_async: do not block boot waiting for PS/2. On modern hardware +# without a real PS/2 controller, the driver may take time to probe. +type = "oneshot_async"