Hello Chris, Thanks a lot for the comments.
On Thu, Dec 31, 2020 at 1:02 AM Chris Murphy <li...@colorremedies.com> wrote: [snip] > > That problem was the result of quite old core.img in the MBR gap (or > BIOS Boot partition). As that change simultaneously depended on > shipping a new GRUB module without a way to update the core.img with > up-to-date GRUB modules, there was a known weak spot that we even knew > of in advance. > Correct. > Upgrades of customized configurations that deviate significantly from > defaults aren't supported. It's best effort. We can't be blocking on > people's customizations. > I agree with you but users have different expectations I think. If they deviated from the default and that didn't cause issues for them after a system wide upgrade, they expect that to be the case on the next update. > I think we can come pretty close to atomically renaming > > /EFI/fedora/grub.cfg /EFI/fedora/grub.cfg.old > /EFI/fedora/grub.cfg.new to /EFI/fedora/grub.cfg > > And at least ensure the user can boot the old one, but even this I > think is pretty unlikely. It's really a teeny tiny window of failure > opportunity. And based on my reading of rename() if the files are > already all present, and all we're doing is renaming them, there > shouldn't be a case where grub.cfg is either missing entirely or zero > bytes. > > But dm-log-writes can help confirm or deny this. What I don't know is > if this can be done with bash. The convert script probably needs to be > done in C. Or at least the rename and sync parts. > Yes, for me is less about this tiny window but more about users having modifications in their GRUB config file that will be overwritten when generating a new one. For example in the BLS conversation some users update their kernel cmdline in the grub.cfg and that didn't match the GRUB_CMDLINE_LINUX in /etc/default/grub. Maybe what we can do is to not generate a new /boot/grub2/grub.cfg but instead copy the one in the ESP to cover these corner cases ? I'll update the proposal based on the feedback. Best regards, Javier _______________________________________________ devel mailing list -- devel@lists.fedoraproject.org To unsubscribe send an email to devel-le...@lists.fedoraproject.org Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org