[Bug 1189879] New: Missing kernel config in /boot
https://bugzilla.suse.com/show_bug.cgi?id=1189879 Bug ID: 1189879 Summary: Missing kernel config in /boot Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: Other OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: Kernel Assignee: kernel-bugs@opensuse.org Reporter: petr.vorel@suse.com QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- bsc#1184804 moved kernel config out of /boot into /usr/lib/modules/. But unlike vmlinuz and initrd there is missing symlink in /boot. Is it really a wanted change? $ ls -l /boot/ -rw-r--r-- 1 root root 0 Mar 13 2017 backup_mbr -rw-r--r-- 1 root root 1725 Jul 28 19:25 boot.readme drwxr-xr-x 6 root root 4096 Aug 25 11:18 grub2 lrwxrwxrwx 1 root root 34 Aug 25 10:57 initrd -> initrd-5.14.0-rc7-3.gdbb9dbc-debug -rw------- 1 root root 11202252 May 24 2019 initrd-5.0.7 -rw------- 1 root root 22664676 Aug 25 11:02 initrd-5.14.0-rc7-3.gdbb9dbc-debug -rw------- 1 root root 22652804 Aug 25 11:03 initrd-5.14.0-rc7-3.gdbb9dbc-default -rw------- 1 root root 13074280 Jul 4 2019 initrd-5.2.0-rc1-2.gb225e5a-default+ -rw------- 1 root root 19355748 Jul 4 2019 initrd-5.2.0-rc1-2.gb225e5a-default+-kdump lrwxrwxrwx 1 root root 58 Aug 25 10:57 sysctl.conf-5.14.0-rc7-3.gdbb9dbc-debug -> ../usr/lib/modules/5.14.0-rc7-3.gdbb9dbc-debug/sysctl.conf lrwxrwxrwx 1 root root 60 Aug 25 10:56 sysctl.conf-5.14.0-rc7-3.gdbb9dbc-default -> ../usr/lib/modules/5.14.0-rc7-3.gdbb9dbc-default/sysctl.conf lrwxrwxrwx 1 root root 57 Aug 25 10:57 System.map-5.14.0-rc7-3.gdbb9dbc-debug -> ../usr/lib/modules/5.14.0-rc7-3.gdbb9dbc-debug/System.map lrwxrwxrwx 1 root root 59 Aug 25 10:56 System.map-5.14.0-rc7-3.gdbb9dbc-default -> ../usr/lib/modules/5.14.0-rc7-3.gdbb9dbc-default/System.map lrwxrwxrwx 1 root root 35 Aug 25 10:57 vmlinuz -> vmlinuz-5.14.0-rc7-3.gdbb9dbc-debug lrwxrwxrwx 1 root root 54 Aug 25 10:57 vmlinuz-5.14.0-rc7-3.gdbb9dbc-debug -> ../usr/lib/modules/5.14.0-rc7-3.gdbb9dbc-debug/vmlinuz lrwxrwxrwx 1 root root 56 Aug 25 10:56 vmlinuz-5.14.0-rc7-3.gdbb9dbc-default -> ../usr/lib/modules/5.14.0-rc7-3.gdbb9dbc-default/vmlinuz If yes, some users can be surprised. Also rpm package claims to have config in /boot but it's not there: $ rpm -ql kernel-default-5.14~rc7-3.1.gdbb9dbc.x86_64 |grep /boot/config /boot/config-5.14.0-rc7-3.gdbb9dbc-default ls -la /boot/config-5.14.0-rc7-3.gdbb9dbc-default ls: cannot access '/boot/config-5.14.0-rc7-3.gdbb9dbc-default': No such file or directory According to openQA it was broken somewhere between 5.13.12-1.2 999e6048a4cc6accd2653c9dccaaaff2f4ae8f86 (good) and 5.13.12-2.1 33df9c651d0aa37cce1275bd9528ea5cb9196022 (bad). It looks to me that 33df9c651d0aa37cce1275bd9528ea5cb9196022 Revert "Revert "UsrMerge the kernel (boo#1184804)"" broke it. -- You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1189879
Petr Vorel
https://bugzilla.suse.com/show_bug.cgi?id=1189879
Michal Suchanek
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c1
--- Comment #1 from Ludwig Nussel
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c2
--- Comment #2 from Petr Vorel
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c3
--- Comment #3 from Michal Suchanek
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c4
--- Comment #4 from Ludwig Nussel
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c5
--- Comment #5 from Michal Suchanek
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c6
--- Comment #6 from Petr Vorel
/boot/config-$(uname -r) is the place where the config is typically placed for distribution provided kernel. +1
@lnussel Although People have it in their custom scripts. And this is not only for some cross distro tools, even current SLES/Leap vs. openSUSE Tumbleweed users will be affected. Sure, solution is simple: f="/boot/config-$(uname -r)"; [ -f "$f" ] || f="/usr/lib/modules/$(uname -r)/config But users will think: why to break compatibility for no reason (again)? For cross distro tools you cannot rely on /proc/config.gz, because not all distros have CONFIG_IKCONFIG_PROC enabled.
It can be used for rebuilding the kernel with the same configuration.
It is not consumed by the bootloader or something so a symlink rather than hardlink would suffice.
+1 -- You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c7
--- Comment #7 from Michal Suchanek
But users will think: why to break compatibility for no reason (again)?
+1
For cross distro tools you cannot rely on /proc/config.gz, because not all
Also you may not be running the kernel you are rebuilding. -- You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1189879
Michal Suchanek
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c8
--- Comment #8 from Olaf Hering
https://bugzilla.suse.com/show_bug.cgi?id=1189879
Petr Vorel
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c9
Martin Wilck
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c10
--- Comment #10 from Jiri Slaby
No offense, but these missing %ghost files create a lot of confusion. It's particularly confusing that some of the symlinks are created in %post, while others are not. That simply looks like an oversight on the part of the developers, even if it was done deliberately.
My intention definitely was: no undocumented changes. -- You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c11
Takashi Iwai
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c12
--- Comment #12 from Martin Wilck
The fix is still missing?
Not sure which fix you mean, but Michal is working on a large-ish change of the kernel scriptlets in bug 1189841. -- You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c13
--- Comment #13 from Michal Suchanek
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c14
--- Comment #14 from Martin Wilck
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c15
Ludwig Nussel
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c16
Ludwig Nussel
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c17
--- Comment #17 from Martin Wilck
There is no promise how /boot will look like in the future. See also https://systemd.io/BOOT_LOADER_SPECIFICATION/
I don't think that spec will take us very far: "Note that the $BOOT partition is not supposed to be exclusive territory of this specification. This specification only defines semantics of the /loader/ directory inside the file system (see below), but it doesn���t intend to define ownership of the whole file system exclusively. Boot loaders, firmware, and other software implementing this specification may choose to place other files and directories in the same file system." I'm still waiting for a rationale why these symlinks should _not_ exist. Is it because /boot should be r/o? I suppose not, because then you couldn't create the sysctl.conf and other symlinks, either. I really see no other good reason. On the other hand, the absence of these files is likely not only to confuse users, but break scripts and software all over the place. These files have existed under /boot for as long as most of us can remember. -- You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c19
Ludwig Nussel
[...] I'm still waiting for a rationale why these symlinks should _not_ exist. Is it because /boot should be r/o? I suppose not, because then you couldn't create the sysctl.conf and other symlinks, either. I really see no other good reason. On the other hand, the absence of these files is likely not only to confuse users, but break scripts and software all over the place. These files have existed under /boot for as long as most of us can remember.
You mean symvers and symtypes? What tools use them? Fedora 34 also doesn't have them (only config and System.map left atm). Going forward the /boot as we know it is kind of redundant so there might be no need to even have it anymore IMO. All OS files are in /usr and boot stuff goes to the EFI boot partition that could be mounted only when writing it is needed. Anyway, pr for adding config link back was merged, thanks! -- You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c20
--- Comment #20 from Jiri Slaby
Anyway, pr for adding config link back was merged, thanks!
FTR, AFAICS, it was not (yet). -- You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c21
--- Comment #21 from Martin Wilck
FTR, AFAICS, it was not (yet).
Ludwig submitted it to suse-module-tools, and I merged it yesterday. It's based on Michal's work to move all kernel scriptlets into s-m-t (boo#1189841). So this will fixed after the kernel migrates to the "external" scripting. -- You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c22
--- Comment #22 from Ludwig Nussel
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c23
--- Comment #23 from Martin Wilck
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c24
Jiri Slaby
Too many moving bits :-) the script removal happened in the stable branch yesterday night so my submission to the kernel git is obsolete.
Not completely, could you rebase only w/ a5f2391d33d (rpm/kernel-binary.spec.in: avoid conflicting suse-release). -- You are receiving this mail because: You are the assignee for the bug.
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c26
--- Comment #26 from openQA Review
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c27
--- Comment #27 from openQA Review
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c31
Michal Suchanek
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c34
--- Comment #34 from Swamp Workflow Management
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c35
--- Comment #35 from Swamp Workflow Management
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c36
--- Comment #36 from Swamp Workflow Management
https://bugzilla.suse.com/show_bug.cgi?id=1189879
https://bugzilla.suse.com/show_bug.cgi?id=1189879#c37
--- Comment #37 from Swamp Workflow Management
participants (1)
-
bugzilla_noreply@suse.com