U-boot picks wrong ESP to boot from

I have two separate asahi fedora installs, “Fedora Gnome” at nvme 0:6 and “Fedora Minimal” at nvme 0:11. What used to happen when I booted Gnome was something like this:

Scanning nvme 0:6
Failed to load '/'
Booting nvme 0:11

What now happens when picking Gnome from the apple boot picker is this:

Scanning nvme 0:6
Failed to load '/'
Booting nvme 0:6

I’ve tried doing update-m1n1 again, but it doesn’t fix anything. Is there a way I can boot to a specific ESP from the u-boot shell? Or is there a way that I’m missing to set u-boot’s target ESP?

The target ESP is set at m1n1 stage 1 install time. Did you re-create your ESPs or otherwise change the partition UUID? strings /proc/device-tree/chosen/asahi,efi-system-partition should print the intended ESP UUID from Linux, for a given boot OS selected from the Apple boot picker.

I wouldn’t rule out that there is something in the fedora u-boot boot scripts which breaks our multi-os boot story if there are 2 Fedora installs on disk. I tested multi OS boot only with a single fedora and several other OS installations. The plain fedora u-boot will certainly break multi-os boot. Might be worth checking that not either of the installs installed the fedora u-boot instead of the fedora-asahi-remix one.

The entry here always matches what the ESP should be according to the entry I picked in the apple boot picker, but u-boot always chooses the first one it can find, or something like that.

Can you paste the output of rpm -qi uboot-images-armv8?

Name        : uboot-images-armv8
Version     : 2023.07
Release     : 5.fc39
Architecture: noarch
Install Date: Wed 01 Nov 2023 12:06:38 PM EDT
Group       : Unspecified
Size        : 361445734
License     : GPLv2+ BSD LGPL-2.1+ LGPL-2.0+
Signature   : RSA/SHA256, Thu 12 Oct 2023 12:10:27 PM EDT, Key ID 3cd7fc2c3aa33141
Source RPM  : uboot-tools-2023.07-5.fc39.src.rpm
Build Date  : Thu 12 Oct 2023 11:04:31 AM EDT
Build Host  : aws-aarch64-spot-prod-13110775-20231012-145938
Vendor      : Fedora Copr - group @asahi
URL         : http://www.denx.de/wiki/U-Boot
Summary     : U-Boot firmware images for aarch64 boards
Description :
U-Boot firmware binaries for aarch64 boards

That one’s right. Is this one from the install that doesn’t boot though? If you can’t get into the other install, you could try replacing /boot/m1n1.bin with m1n1.bin.old (there should be a backup) or with the one from the other install.