Raspberry Pi 5 failing when moving to NVME

I have a good setup working well on an RPI5 with an SD card but I’m struggling to move it to an NVME boot. It’s a Raspberry Pi 5 with the M.2+ HAT+ and a Raspberry Pi branded SSD.

It seems that it’s failing to identify the boot partition. The fdisk partitions seem ok so maybe this is from balena_stage2 (which I’m assuming enables the host OS to be reflashed and the partition swapped somehow)

Starting version 250.5+

[init][ERROR] Failed to identify boot partition

5.504764] Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000100

5.5047811 CPU: 1 UID: 0 PID: 1 Comm: init Not tainted 6.12.1-U8-16k #1

5.504791] Hardware name: Raspberry Pi 5 Model B Rev 1.1 (DT)

5.504798] Call trace:

5.504802]  dump_backtrace +0x9c/0×100

5.5048111  shou_stack+0x20/0x38

5.504816]  dump_stack_lul +0x38/0×90

5.504823]  dump_stack+0x18/0x28

5.504828]  panic+0x3a8/0x408

5.5048351  do_exit+0x88c/0x9c0

5.504841]  do group_exit +0×3c/0xa0

5.504848]  _arn64_sys_exit_group+0x20/0x28

5.504855]  invoke_syscal 1+0x50/0x120

5.504862]  e10_suc _common.constprop.0+0x48/0x18

5.504869]  do_e 10_suc +0x28/0×40

5.504875]  e10_suc+0x30/Oxd0

5.504881]  e10t_64_sync_hand ler+0x13c/0x158

5.504887]  el0t_61_sync+0x190/0x198

5.504893]  SMP: stopping secondary CPUs

5.504900]  Kernel Offset: 0x106f4e400000 from 0xffffc00080000000

5.504907] PHYS_OFFSET: 0x0

5.504911] CPU features: 0x10,00000017,00280928,0200720b

5.504919] Memory Limit: none

xxxxx025] ---| end Kernel panic - not syncing: Attempted to kill init! exitcode=0x00000100 ]---

I’ve noticed there are some duplicates in cmdline.txt but I can’t see that causing an issue.

EEPROM 2024-09-23

$ sudo rpi-eeprom-config 
[all]
BOOT_UART=1
BOOT_ORDER=0xf461
NET_INSTALL_AT_POWER_ON=1
PCIE_PROBE=1 

I’ve eliminated hardware issues by installing a vanilla RPI OS through Pi Imager and using a Hefty Macbook laptop PSU to rule out any weird power issues.

I’ve followed some guides (Boot from NVMe on Raspberry Pi 5 - #3 by mpous, Booting from NVMe - Pineberry Pi Documentaton) - but having no luck.

Here is the diff between the partitions on the RPI image and the Balena Image

and the diff between balena 6.5.21+rev2 and 6.5.24 (identical)

Any ideas welcome.
I would settle for an SD host boot with the SSD for all the docker images and data but I’m not sure how to set that up.

1 Like

Success? - it works if I roll back to 6.5.1

Not many obvious differences except the extended partition is much smaller now and there is unpartitioned space left free.

Thanks!

Hello @chrismilleruk first of all welcome to the balena community!

Sadly i don’t have an NVME for my Pi 5 yet however did you try this? Boot from NVMe on Raspberry Pi 5

Let us know if this can help you!

Hi @mpous, thanks and great to be here.

Yes - I saw that and tried the steps there but it didn’t work.

I downgraded the OS to the outdated version 6.5.1 and it seems to boot now. I haven’t yet tried a binary search but if you need me to narrow it down further I’ll take a look.

1 Like

Thanks for sharing this temporary solution @chrismilleruk

Let me share with the OS team this! Thanks

Hello @chrismilleruk a colleague mentioned that he just provisioned a Raspberry Pi 5 to NVMe with balenaOS 6.5.24+rev1 successfully.

Do you want to try?