-
Notifications
You must be signed in to change notification settings - Fork 180
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
$tuned_initrd and $tuned_params are not initialised in grub.cfg after updating to Fedora 41 #704
Comments
Fedora bug: https://bugzilla.redhat.com/show_bug.cgi?id=2323514 There is also fedora-devel discussion. |
I think you would have meant https://discussion.fedoraproject.org/t/kernel-install-92-tuned-install-is-conflicted-with-systemd-boot/134899 @yarda - Please can I just mention these are both discussing something slightly different? Namely how this breaks sd-boot. To be completely specific, the problem I have is that (the Linux loader I work on is only broken here because...) there is no value for these variables available to parse from grubenv or grub.cfg (as mentioned above), even though code to reference the (unset) values is added in loader/entries, so this is a slightly separate, albeit closely related, issue. It seems to me that the issue is something like: if you add TuneD to an existing system, then it does not automatically set initial values for its variables in grub.cfg, even though it sets up code which will consume these (unset) variables in /loader/entries. Which is not fatal, but probably not ideal. Maybe this is just a matter of whether grub2-mkconfig gets called or not, though I am not entirely sure. |
It's set on two places because IMHO grub can run in BLS and non-BLS mode. Exact reproducer is just to upgrade Fedora from F40 to F41? And then the problem doesn't reappear? |
You wouldn't need the values in
Yes.
I believe the issue is that |
We're adding support for multiple initrd files in one GRUB2 For now, at least, we are continuing to assume that grub variables should be initialised, and that if they are not, this should be a DEBUG ASSERT, and cause the entry not to be used even in RELEASE - we want to avoid incorrect boots - but we have added a work-around specifically for the two TuneD variables which we know may (currently) be referenced but not initialised on some distros. †CentOS is one distro which uses grub vars in |
When upgrading to Fedora 41,
$tuned_initrd
and$tuned_params
are inserted into/boot/loader/entries
files for all kernels, e.g.:but corresponding blank values are not inserted into
/boot/grub2/grub.cfg
.Empty values only appear in
grub.cfg
after we re-rungrub2-mkconfig
or if we install a TuneD profile which actually uses these values (e.g. with[bootloader]
cmdline_...=...
&/orinitrd_add_img=...
).The absence of these values does not cause any actual issue in booting, but it goes against a fairly stable convention that grub variables are always defined if referred to. (And makes it harder for any third party software which wants to parse loader/entries, and relies on this convention, to do its work.)
TuneD also inserts the values for
tuned_initrd
andtuned_params
into grubenv. Setting aside the issue of whether this is really wise (grubenv
has very limited space and these variables can be long; it is not clear why they are needed in both places?), it looks as if a quick fix could involve adding initial blank values in either place.The text was updated successfully, but these errors were encountered: