Re: PSA: tuned breaks boot loader entries for systemd-boot

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 5, 2024 at 12:04 PM Zbigniew Jędrzejewski-Szmek
<zbyszek@xxxxxxxxx> wrote:
>
> On Mon, Nov 04, 2024 at 05:06:34PM +0100, Jaroslav Škarvada wrote:
> > On Mon, Nov 4, 2024 at 4:31 PM Fabio Valentini <decathorpe@xxxxxxxxx> wrote:
> > >
> > > On Mon, Nov 4, 2024 at 4:20 PM Jaroslav Škarvada <jskarvad@xxxxxxxxxx> wrote:
> > > >
> > > > On Mon, Nov 4, 2024 at 3:02 PM Ian Pilcher <arequipeno@xxxxxxxxx> wrote:
> > > > >
> > > > > On 11/4/24 7:42 AM, Fabio Valentini wrote:
> > > > > > Oof ... the fact that tuned mangles bootloader parameters wasn't
> > > > > > mentioned at all in the Change Proposal to enable it by default. To me
> > > > > > that would have been a no-go. (I already voted -1 for this change for
> > > > > > other reasons, but these bootloader shenanigans definitely don't make
> > > > > > me regret that decision ...)
> > > > >
> > > > > Should there be a packaging guideline about this?
> > > > >
> > > >
> > > > Hi,
> > > >
> > > > kernel command line parameters can be changed by the bootloader plugin
> > > > which is not used in the profiles that were used in the tuned-ppd
> > > > replacement. So that's probably why it wasn't explicitly mentioned.
> > > > Patching of bootloader entries is done to clearly mark what can be
> > > > changed by TuneD, i.e. by the $tuned_* variables. If the bootloader
> > > > plugin is not used, these variables are empty. It's interesting that
> > > > this problem wasn't reported during the F41 test days
> > >
> > > I wonder if it would be possible to just ... not set bootloader
> > > parameters at all if the bootloader plugin isn't used?
> > > The current implementation seems like a very brittle solution to me
> > > (as witnessed by the systemd-boot breakage).
> > >
> > > Fabio
> >
> > IMHO this is the first problem with it in a very long time (not
> > counting the s390x zipl problem). To be honest this feature was in
> > TuneD years before the Boot Loader Specification (BLS) appeared and
> > when Fedora switched to BLS we used grub as the reference BLS
> > implementation (because AFAIK there was nothing else BLS ready at that
> > time).
>
> No, that gets the timeline completely backwards. $tuned_params
> were introduced in 2014, and the Boot Loader Specification is from
> before 2013 (the doc was added to the systemd tree in May 2013,
> but that was a conversion from an earlier moin wiki page).
>
TuneD used variables in grub configuration files long before BLS ever
existed and when grub introduced BLS support we followed it, i.e. to
support grub configuration files.

> Using grub as a reference implementation for BLS is very wrong.
> For historical reasons, the early implementation in grub completely
> misunderstood how BLS is supposed to work. Fortunately, that early
> code has been ripped out and grub now tries to follow the
> specification.
>
> > The bootloader entries are conservatively (excluding rescue entries)
> > patched in the kernel installation script, which IMHO should run as
> > the root during kernel update, so probably in a transaction. IMHO
> > there is a lower chance that something could go wrong than patching it
> > in the daemon.
>
> It's not "conservative" when it goes completely agains the specification
> and breaks the reference implementation :(
>
AFAIK BLS says nothing about variables thus if it supports variables
it's not against the spec. Otherwise grub would be "completely against
the specification", because it supports it.

> > The problem appeared because systemd-boot doesn't support variable
> > expansion as grub does, because it is not written in the BLS. I am
> > going to patch the 92-tuned.install script to disable the bootloader
> > feature in such case as we already did with the s390x zipl loader
>
> Yes, thank you. Please just drop it everywhere, it makes no sense
> as variable expansion is not going to be added to the specification.
>
TuneD is not the only software that uses variables in grub
configuration files. It's a clean and safe method for customization of
bootloader args and it's a pity it's not mentioned in the BLS spec

thanks & regards

Jaroslav

-- 
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
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@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam, report it: https://pagure.io/fedora-infrastructure/new_issue




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux