Ran into a confusing issue recently with kernel args.
I have two PCs running Fedora. My main PC, and a PC I manage for a family member.
On my PC which I’ve upgraded through from Fedora 35 to 39, args were still persisting through kernel upgrades.
On the second PC, I had installed Fedora 38 then upgraded it to 39 when that released. I’m pretty sure the kernel args I applied while that was on 38 persisted through kernel updates while on 38, but on 39 they weren’t.
After poking around, I found my install was missing
grub2-mkconfig -o /boot/grub2/grub.cfg, which also created that file.
It didn’t have my added args and the args were wiped from all boot entries listed with grubby.
I added the args back with grubby, then restarted to the previous kernel. Removed and installed the latest. This time it didn’t inherit my existing added args. Added the args to
/etc/kernel/cmdline and repeated the re-installation, and it then had them. Did the same on the second PC and got the result I wanted.
So I guess what I’m getting at is, why isn’t grubby writing new args to
/etc/kernel/cmdline if that’s where they need to go for persistence?
And I wonder why I was keeping mine through kernel updates when I didn’t even have that file.