Bug 2304328
Summary: | Backport fixes for rust-bootupd in F41 Beta | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Carl Roth <roth> |
Component: | rust-bootupd | Assignee: | Timothée Ravier <travier> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | unspecified | ||
Version: | 41 | CC: | awilliam, fzatlouk, jmarrero, jonathan, lucab, m.mcnutt, rust-sig, travier, walters |
Target Milestone: | --- | Keywords: | Upgrades |
Target Release: | --- | ||
Hardware: | x86_64 | ||
OS: | Linux | ||
Whiteboard: | AcceptedFreezeException | ||
Fixed In Version: | rust-bootupd-0.2.24-1.fc41 | Doc Type: | If docs needed, set a value |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2024-10-15 00:18:10 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: | |||
Bug Depends On: | |||
Bug Blocks: | 2150982, 2247866 |
Description
Carl Roth
2024-08-13 15:08:23 UTC
This bug might need some disambiguation. One of the other things that got upgraded with the latest OSTree builds was GRUB up to 2.12, and the side effect there is that it lost the /boot/grub2/grub.cfg file. This was particularly painful because the (relatively simple) bootupctl commands to fix that are not documented, and, again, the building a rescue environment that is fully-formed enough that bootupctl will run cleanly is expert level stuff. A lot of things in this bug report so let's go over those one by one. 1. This is likely https://fedoramagazine.org/manual-action-needed-to-resolve-boot-failure-for-fedora-atomic-desktops-and-fedora-iot/ 2. We don't have rescue boot entries in Atomic Desktops right now. Is this what you were looking for? This would be a good RFE to file at https://gitlab.com/fedora/ostree/sig/-/issues 3. We tried to make updating the ESP as transactional as possible: https://github.com/coreos/bootupd/issues/454. Fully completing this would be https://github.com/rhboot/shim/pull/502. 3bis. Updating the bootloader from another (pending) deployment is tracked in https://github.com/coreos/bootupd/issues/108 4. Bootupd currently looks for two names for the ESP (https://github.com/coreos/bootupd/blob/0f3de094a8c9eb965f4d7adad315c1beae7fe995/src/efi.rs#L39.L41) which are the ones used by Anaconda and Fedora CoreOS. We could extend the logic to look for all ESP-type partitions, but that might have implications if you have multiple ones set up by other operating systems. This would be best filed as an issue for bootupd: https://github.com/coreos/bootupd/issues 5. https://github.com/fedora-selinux/selinux-policy/pull/2336 should fix this 6. This one is new to me. Could you give us more details? 7. This one should be fixed by https://github.com/coreos/bootupd/pull/715 I'm going to mark this bug as Beta blocker so that we can land the bootupd update in F41 for those fixes. Proposed as a Freeze Exception for 41-beta by Fedora user siosm using the blocker tracking app because: Fixes required to complete the bootupd change in F41: https://fedoraproject.org/wiki/Changes/FedoraSilverblueBootupd > 6. This one is new to me. Could you give us more details?
If you follow the repro steps in the bug you should see AVC messages in the logs (and a failed bootupctl).
This also ties into (7) in that the bootupctl failure leaves a tombstone (failed) service in /run/systemd/transient
> 4. Bootupd currently looks for two names for the ESP
> (https://github.com/coreos/bootupd/blob/
> 0f3de094a8c9eb965f4d7adad315c1beae7fe995/src/efi.rs#L39.L41) which are the
> ones used by Anaconda and Fedora CoreOS. We could extend the logic to look
> for all ESP-type partitions, but that might have implications if you have
> multiple ones set up by other operating systems. This would be best filed as
> an issue for bootupd: https://github.com/coreos/bootupd/issues
The Anaconda installer for F38 labeled all of the partitions with the string "primary". I'll take your word for it that it's been fixed in current Anaconda.
To clarify for the freeze exception, this is to get an updated bootupd package in Fedora 41, which will include the following fixes: - https://github.com/coreos/bootupd/issues/707 > Recover on failures - https://github.com/coreos/bootupd/issues/454 > Needed to make updates safer - https://github.com/coreos/bootupd/pull/716 > Needed to let Atomic Desktops enable bootupd updates by default (In reply to Carl Roth from comment #4) > > 6. This one is new to me. Could you give us more details? > > If you follow the repro steps in the bug you should see AVC messages in the > logs (and a failed bootupctl). Atomic Desktops have /boot/efi mounted by default right now. I unmounted it and I can reproduce this one now. (In reply to Carl Roth from comment #5) > > 4. Bootupd currently looks for two names for the ESP > > (https://github.com/coreos/bootupd/blob/ > > 0f3de094a8c9eb965f4d7adad315c1beae7fe995/src/efi.rs#L39.L41) which are the > > ones used by Anaconda and Fedora CoreOS. We could extend the logic to look > > for all ESP-type partitions, but that might have implications if you have > > multiple ones set up by other operating systems. This would be best filed as > > an issue for bootupd: https://github.com/coreos/bootupd/issues > > The Anaconda installer for F38 labeled all of the partitions with the string > "primary". I'll take your word for it that it's been fixed in current > Anaconda. I can not reproduce that. My system is an old install (F34 at least) and I have PARTLABEL="EFI System Partition". All the new installations that I did have it like that as well. (In reply to Timothée Ravier from comment #7) > Atomic Desktops have /boot/efi mounted by default right now. I unmounted it > and I can reproduce this one now. Filed https://github.com/fedora-selinux/selinux-policy/issues/2341 Discussed during the 2024-09-03 blocker review meeting: [1] The decision to classify this bug wasn't made: "We're generally inclined to +1 appropriate and scoped fixes for bootupd, but this seems like a very vague ticket, we would like to ask travier for more clarity on which of the 7.5 listed issues are considered in scope for fixing here." [1] https://meetbot.fedoraproject.org/blocker-review_matrix_fedoraproject-org/2024-09-03/f41-blocker-review.2024-09-03-16.00.log.html Move tracking the SELinux backports to https://bugzilla.redhat.com/show_bug.cgi?id=2309742 Let's rescope this issue to landing the following fixes for the bootupd package: - https://github.com/coreos/bootupd/issues/454 - Fixed by https://github.com/coreos/bootupd/pull/669 - Which is in the https://github.com/coreos/bootupd/releases/tag/v0.2.21 release - Which is already in Rawhide - https://github.com/coreos/bootupd/issues/707 - Fixed by https://github.com/coreos/bootupd/pull/715 - Which is not yet in a release This should let us enable updates by default, which will happen in a backport of https://pagure.io/workstation-ostree-config/pull-request/571 +3 in https://pagure.io/fedora-qa/blocker-review/issue/1638 , marking accepted. FEDORA-2024-7bb17ff603 (rust-bootupd-0.2.24-1.fc41) has been submitted as an update to Fedora 41. https://bodhi.fedoraproject.org/updates/FEDORA-2024-7bb17ff603 FEDORA-2024-7bb17ff603 (rust-bootupd-0.2.24-1.fc41) has been pushed to the Fedora 41 stable repository. If problem still persists, please make note of it in this bug report. |