Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Enable sysroot.bootprefix by default #3156

Merged
merged 1 commit into from
Feb 6, 2024

Conversation

cgwalters
Copy link
Member

I've been testing this in various places and not seen any fallout, so let's finally enable this by default and have the situation where /boot is on the root / filesystem work out of the box.

@cgwalters
Copy link
Member Author

OK, this needs #3157 which I split out separately for clarity.

I've been testing this in various places and not seen any fallout,
so let's finally enable this by default and have the situation where
`/boot` is on the root `/` filesystem work out of the box.
@cgwalters cgwalters merged commit 58aa218 into ostreedev:main Feb 6, 2024
24 checks passed
@cgwalters
Copy link
Member Author

This got effectively shipped early in coreos/coreos-assembler@f5677a3 and we think there's a failure on s390x

 Read disk 2.2 GiB/2.2 GiB (100%)^M                                                                                                                                                      
 Read disk 2.2 GiB/2.2 GiB (100%)^M                                                                                                                                                      
 Writing Ignition config^M                                                                                                                                                               
 Copying networking configuration from /etc/NetworkManager/system-connections/^M                                                                                                         
 Copying /etc/NetworkManager/system-connections/coreos-dhcp.nmconnection to installed system^M                                                                                           
 Copying /etc/NetworkManager/system-connections/br-ex.nmconnection to installed system^M                                                                                                 
 Error: Could not add image file '/boot/ostree/fedora-coreos-36affd073876e61712d708a2e6801d958a88beae5a44525cce7fdb77e8e1cabc/vmlinuz-6.6.14-200.fc39.s390x': Could not get disk geometry
 Using config file '/tmp/coreos-installer-zipl.znTNvH' (from command line)^M                                                                                                             
 Using BLS config file '/tmp/coreos-installer-zipl-bls-Zix4Hk/loader/entries/ostree-1-fedora-coreos.conf'^M                                                                              
 Building bootmap in '/tmp/coreos-installer-B6PWED'^M                                                                                                                                    
 Building menu 'zipl-automatic-menu'^M                                                                                                                                                   
 Adding #1: IPL section 'Fedora CoreOS 39.20240205.20.2 (ostree:0)' (default)^M                                                                                                          
 Error: Command {^M                                                                                                                                                                      
     program: "zipl",^M                                                                                                                                                                  
     args: [^M                                                                                                                                                                           
         "zipl",^M                                                                                                                                                                       
         "--blsdir",^M                                                                                                                                                                   
         "/tmp/coreos-installer-zipl-bls-Zix4Hk/loader/entries",^M                                                                                                                       
         "--config",^M                                                                                                                                                                   
         "/tmp/coreos-installer-zipl.znTNvH",^M                                                                                                                                          
     ],^M                                                                                                                                                                                
     create_pidfd: false,^M                                                                                                                                                              
 } failed with exit status: 1^M                                                                                                                                                          
 Resetting partition table^M        

@dustymabe
Copy link
Contributor

@cgwalters and one other issue I'm seeing is that in the OSBuild workflow half the time we end up with media that won't boot:

  Booting `Fedora CoreOS 40.20240207.dev.1 (ostree:0)'

error: ../../grub-core/fs/fshelp.c:257:file
`/boot/ostree/fedora-coreos-f25027bf4dfb2213
7b7c8401ed2396924ba112482afc30d62b7a4ab1310b09db/vmlinuz-6.8.0-0.rc0.20240112gi
t70d201a40823.5.fc40.x86_64' not found.
error: ../../grub-core/loader/i386/pc/linux.c:422:you need to load the kernel
first.
 
Press any key to continue...

Not sure if there is some filesystem consistency issue that could be contributing to that last one though.

I opened coreos/fedora-coreos-tracker#1667 to track this at least at an FCOS level.

@cgwalters
Copy link
Member Author

We've enabled bootprefix by default for a while as part of bootc install (since containers/bootc#193 ) and things seem to be working OK, but that hasn't hit s390x testing yet.

For the failing to boot on x86_64 case, it's probably worth looking at the generated disk images (e.g. with guestfish) - do you see the kernel in place? Does the /boot filesystem look sane?

cgwalters added a commit to cgwalters/ostree that referenced this pull request Feb 7, 2024
This reverts commit 8627c8a.

See discussion in ostreedev#3156 ;
we think this breaks s390x in some cases at least, and that warrants
further investigation.
@cgwalters
Copy link
Member Author

Nevertheless, revert in #3159

@dustymabe
Copy link
Contributor

For the failing to boot on x86_64 case, it's probably worth looking at the generated disk images (e.g. with guestfish) - do you see the kernel in place? Does the /boot filesystem look sane?

Inspecting a little more it's almost like there is something wrong with the /ostree directory:

[dustymabe@media fcos]$ ls -lh builds/40.20240207.dev.1/x86_64/fedora-coreos-40.20240207.dev.1-qemu.x86_64.qcow2 
-r--r--r--. 1 dustymabe dustymabe 1.6G Feb  6 20:46 builds/40.20240207.dev.1/x86_64/fedora-coreos-40.20240207.dev.1-qemu.x86_64.qcow2
[dustymabe@media fcos]$ virt-ls -a builds/40.20240207.dev.1/x86_64/fedora-coreos-40.20240207.dev.1-qemu.x86_64.qcow2 -m /dev/sda3 /
boot
bootupd-state.json
coreos
efi
grub2
ignition.firstboot
loader
loader.1
lost+found
ostree
[dustymabe@media fcos]$ virt-ls -a builds/40.20240207.dev.1/x86_64/fedora-coreos-40.20240207.dev.1-qemu.x86_64.qcow2 -m /dev/sda3 /boot/
boot
bootupd-state.json
coreos
efi
grub2
ignition.firstboot
loader
loader.1
lost+found
ostree
[dustymabe@media fcos]$ virt-ls -a builds/40.20240207.dev.1/x86_64/fedora-coreos-40.20240207.dev.1-qemu.x86_64.qcow2 -m /dev/sda3 /boot/loader/entries/
ostree-1-fedora-coreos.conf
[dustymabe@media fcos]$ virt-ls -a builds/40.20240207.dev.1/x86_64/fedora-coreos-40.20240207.dev.1-qemu.x86_64.qcow2 -m /dev/sda3 /ostree/
libguestfs: error: ls0: opendir: /ostree/: Bad message

@dustymabe
Copy link
Contributor

I think I'm about to reproduce the GRUB failure without sysroot.bootprefix set to true. Will investigate more tomorrow.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants