Slot B is marked bad by the bootloader. This explains why updates appear to succeed in the UI while the system keeps rebooting into A.
Steps taken to diagnose/fix
- Checked journals around update attempts:
journalctl --list-boots + journalctl -b <offset> -p err on the short boots corresponding to update attempts show no rauc/grub-editenv/mnt-boot errors, no useful trace at all. Whatever fails on slot B fails before persistent logging starts.
- Forced boot to B:
rauc status mark-active kernel.1 + reboot. System took over 10 minutes to come back, ended up on A again with B still marked bad. No confirmation it even attempted B.
- Full manual reinstall via SSH:
sudo rauc install zimaos-x86_64-1.7.0.raucb. Completed successfully end to end (boot.0, kernel.1, rootfs.1 all rewritten, "Installing done").
- Rebooted after the clean reinstall: still stuck on A, still doesn't boot into B.
Analysis
This rules out bundle/package corruption: slot B receives a fully clean, freshly-written image and still fails to boot or gets reverted. This points to something at the bootloader/GRUB level rather than the update package itself.
The end symptom (slot B permanently marked bad, silent fallback to A) resembles what's described in #478 (mnt-boot.mount / grub-editenv failures during early boot), though I can't confirm it's the same root cause since my logs don't show those specific errors, the failure happens too early to be captured.
One detail that might be relevant: I also see nvme nvme1: Device not ready; aborting reset, CSTS=0x1 in the journal on normal boots on A too, so there may be an NVMe timing/reset issue on this hardware interacting badly with the A/B boot-attempt window.
What I'd need
I don't currently have physical console access to this unit, so I can't see what happens on screen during a B boot attempt (that's the next thing I'll try to arrange). Has anyone looked into what causes a slot to get marked bad here? Happy to provide more logs/output on request.
Slot B is marked
badby the bootloader. This explains why updates appear to succeed in the UI while the system keeps rebooting into A.Steps taken to diagnose/fix
journalctl --list-boots+journalctl -b <offset> -p erron the short boots corresponding to update attempts show no rauc/grub-editenv/mnt-boot errors, no useful trace at all. Whatever fails on slot B fails before persistent logging starts.rauc status mark-active kernel.1+ reboot. System took over 10 minutes to come back, ended up on A again with B still marked bad. No confirmation it even attempted B.sudo rauc install zimaos-x86_64-1.7.0.raucb. Completed successfully end to end (boot.0,kernel.1,rootfs.1all rewritten, "Installing done").Analysis
This rules out bundle/package corruption: slot B receives a fully clean, freshly-written image and still fails to boot or gets reverted. This points to something at the bootloader/GRUB level rather than the update package itself.
The end symptom (slot B permanently marked bad, silent fallback to A) resembles what's described in #478 (
mnt-boot.mount/grub-editenvfailures during early boot), though I can't confirm it's the same root cause since my logs don't show those specific errors, the failure happens too early to be captured.One detail that might be relevant: I also see
nvme nvme1: Device not ready; aborting reset, CSTS=0x1in the journal on normal boots on A too, so there may be an NVMe timing/reset issue on this hardware interacting badly with the A/B boot-attempt window.What I'd need
I don't currently have physical console access to this unit, so I can't see what happens on screen during a B boot attempt (that's the next thing I'll try to arrange). Has anyone looked into what causes a slot to get marked
badhere? Happy to provide more logs/output on request.