Public bug reported:

Package: flash-kernel
Version: (check with: dpkg -l flash-kernel)

== Summary ==
piboot-try-reboot.service consistently fails to perform the tryboot reboot
because the `reboot` command cannot connect to D-Bus, which is not yet
available at sysinit.target stage. This causes the subsequent normal boot
to be misinterpreted as a failed tryboot attempt, permanently marking new
boot assets as "bad" and preventing kernel upgrades from taking effect.

== Steps to Reproduce ==
1. Install a new kernel that triggers flash-kernel to write new boot assets
   to /boot/firmware/new/ (state: unknown)
2. Reboot to trigger the A/B test mechanism
3. piboot-try-reboot.service starts at sysinit.target and calls
   `reboot "$boot_partition tryboot"`
4. The reboot command fails: "Failed to connect to system scope bus via
   local transport: No such file or directory"
5. systemd kills the service with SIGTERM (exit code signal/15)
6. The Pi reboots normally (not via tryboot), which piboot-try interprets
   as a failed test boot
7. /boot/firmware/new/state is set to "bad"

== Expected Behaviour ==
piboot-try-reboot.service should successfully trigger a tryboot reboot,
allowing the new kernel to be tested and promoted if healthy.

== Actual Behaviour ==
The reboot command fails to connect to D-Bus (unavailable at sysinit.target).
The service is killed, no tryboot reboot occurs, and new boot assets are
permanently marked bad regardless of whether the new kernel is functional.

== Relevant Journal Entries ==
  piboot-try[593]: Rebooting to test new boot assets
  reboot[777]: Failed to connect to system scope bus via local transport:
               No such file or directory
  piboot-try-reboot.service: Main process exited, code=killed, status=15/TERM
  piboot-try-reboot.service: Failed with result 'signal'.

== Suggested Fix ==
Use `systemctl reboot` with --no-block, or use the raw reboot syscall /
/sbin/reboot with -f (force, bypasses D-Bus), or add D-Bus as a dependency
of piboot-try-reboot.service. For example, replacing:
  reboot "$boot_partition tryboot"
with:
  reboot -f "$boot_partition tryboot"
may allow the reboot to succeed without requiring D-Bus.

== System Info ==
Hardware: Raspberry Pi 4 Model B
OS: Ubuntu 25.10 (questing) aarch64
Kernel (running): 6.14.0-1019-raspi
Kernel (in new/): 6.17.0-1018-raspi
flash-kernel version: (fill in from: dpkg -l flash-kernel)

ProblemType: Bug
DistroRelease: Ubuntu 25.10
Package: flash-kernel 3.109ubuntu6.2
ProcVersionSignature: Ubuntu 6.14.0-1019.19-raspi 6.14.11
Uname: Linux 6.14.0-1019-raspi aarch64
ApportVersion: 2.33.1-0ubuntu3
Architecture: arm64
CasperMD5CheckResult: unknown
CloudArchitecture: aarch64
CloudID: nocloud
CloudName: unknown
CloudPlatform: nocloud
CloudSubPlatform: config-disk (/dev/mmcblk0p1)
Date: Sat May 30 10:23:33 2026
ImageMediaBuild: 20250415
ProcEnviron:
 LANG=C.UTF-8
 PATH=(custom, no user)
 SHELL=/bin/bash
 TERM=xterm
SourcePackage: flash-kernel
UpgradeStatus: Upgraded to questing on 2026-03-06 (85 days ago)

** Affects: flash-kernel (Ubuntu)
     Importance: Undecided
         Status: New


** Tags: apport-bug arm64 arm64-image questing raspi-image

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2154627

Title:
  piboot-try-reboot.service fails: reboot command cannot connect to
  D-Bus at sysinit.target

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/flash-kernel/+bug/2154627/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to