Why is manual symlink to vmlinux in the kernel source required for module build of
Devs, Building kernel modules on an old 15.4 install, I get the warning: Skipping BTF generation for /home/david/dev/src-c/tmp/tst/kmgpio/gpioblink.ko due to unavailability of vmlinux Tracking the issue down, I ended up creating the symlink in the kernel source directory linux-5.14.21-150400.24.100-obj/x86_64/default: # ln -s /sys/kernel/btf/vmlinux The build proceeds fine then. My question is "is this normal to have to manually create the vmlinux symlink, and if not how should it be properly handled?" -- David C. Rankin, J.D.,P.E.
Hello, In the Message; Subject : Why is manual symlink to vmlinux in the kernel source required for module build of Message-ID : <802acdb3-0ec4-47ac-bfea-6f018d0ab67a@gmail.com> Date & Time: Fri, 31 May 2024 20:13:15 -0500 [DCR] == "David C. Rankin" <drankinatty@gmail.com> has written: DCR> Devs, DCR> Building kernel modules on an old 15.4 install, I get the warning: DCR> Skipping BTF generation for DCR> /home/david/dev/src-c/tmp/tst/kmgpio/gpioblink.ko DCR> due to unavailability of vmlinux [...] DCR> The build proceeds fine then. My question is "is this normal to have to DCR> manually create the vmlinux symlink, and if not how should it be properly DCR> handled?" Is there something wrong with the build structure? In other words, skipping BTF generation is a problem that cannot be ignored; https://hatchjs.com/skipping-btf-generation-due-to-unavailability-of-vmlinux... What are the consequences of skipping BTF generation? Skipping BTF generation can have a number of consequences, including: Reduced performance: BTF provides information that can be used to optimize the performance of kernel code. By skipping BTF generation, you may lose out on these optimizations. Increased debugging difficulty: BTF can be used to debug kernel problems. By skipping BTF generation, you may make it more difficult to debug problems. Increased security risk: BTF can be used to detect security vulnerabilities. By skipping BTF generation, you may increase your risk of being exploited by a security vulnerability. I don't think the maintainer would do something like that? Best Regards. --- ┏━━┓彡 野宮 賢 mail-to: m.nomiya+suse @ gmail.com ┃\/彡 ┗━━┛ "Companies have come to view generative AI as a kind of monster that must be fed at all costs―even if it isn’t always clear what exactly that data is needed for or what those future AI systems might end up doing." -- Generative AI Is Making Companies Even More Thirsty for Your Data --
On 5/31/24 22:14, Masaru Nomiya wrote:
[DCR] == "David C. Rankin"<drankinatty@gmail.com> has written:
DCR> Devs,
DCR> Building kernel modules on an old 15.4 install, I get the warning:
DCR> Skipping BTF generation for DCR> /home/david/dev/src-c/tmp/tst/kmgpio/gpioblink.ko DCR> due to unavailability of vmlinux [...] DCR> The build proceeds fine then. My question is "is this normal to have to DCR> manually create the vmlinux symlink, and if not how should it be properly DCR> handled?"
Is there something wrong with the build structure?
In other words, skipping BTF generation is a problem that cannot be ignored;
Whoa... That's from a completely unrelated thread on 15.4 related to an issue with a raspberry Pi build of a GPIO program. Not sure what it relates to here. Maybe I just don't see how it relates to acpi_video0 on Tumbleweed?? -- David C. Rankin, J.D.,P.E.
On 5/31/24 22:14, Masaru Nomiya wrote:
Is there something wrong with the build structure?
In other words, skipping BTF generation is a problem that cannot be ignored;
Oops My bad, didn't see you picked up an old thread to answer. I'll follow up with this. -- David C. Rankin, J.D.,P.E.
On 01.06.2024 04:13, David C. Rankin wrote:
Devs,
Building kernel modules on an old 15.4 install, I get the warning:
Skipping BTF generation for /home/david/dev/src-c/tmp/tst/kmgpio/gpioblink.ko due to unavailability of vmlinux
Tracking the issue down, I ended up creating the symlink in the kernel source directory linux-5.14.21-150400.24.100-obj/x86_64/default:
# ln -s /sys/kernel/btf/vmlinux
The build proceeds fine then. My question is "is this normal to have to manually create the vmlinux symlink, and if not how should it be properly handled?"
It is normal for upstream kernel which allows building of external modules without building of vmlinux first. For openSUSE I guess you could try bug report.
To put it another way, is there a problem with the build structure? In other words, omitting the generation of the BTF is a problem that cannot be denied; https://hatchjs.com/skipping-btf-generation-due-to-unavailability-of-vmlinux... https://geometrydashwave.com
participants (4)
-
Andrei Borzenkov
-
David C. Rankin
-
Lloyd Joseph
-
Masaru Nomiya