> Hi Alan, > > Thanks for taking a look at this. I've been following your related effort > to allow /sys/kernel/btf/vmlinux as a module in support of small systems > with kernel-size constraints, and wondered how this series might affect > that work? Such support would be well-received in the embedded space when > it happens, so am keen to understand. > > Thanks, > Tony
hi Tony I had something nearly working a few months back but there are a bunch of complications that made it a bit trickier than I'd first anticipated. One challenge for example is that we want /sys/kernel/btf to behave just as it would if vmlinux BTF was not a module. My original hope was to just have the vmlinux BTF module forceload early, but the request module approach won't work since the vmlinux_btf.ko module would have to be part of the initrd image. A question for you on this - I presume that's what you want to avoid, right? So I'm assuming that we need to extract the .BTF section out of the vmlinu[xz] binary and out of initrd into a later-loading vmlinux_btf.ko module for small-footprint systems. Is that correct? The reason I ask is having a later-loading vmlinux_btf.ko is a bit of a pain since we need to walk the set of kernel modules and load their BTF, relocate it and do kfunc registration. If we can simplify things via a shared module dependency on vmlinux_btf.ko that would be great, but I'd like to better understand the constraints from the small system perspective first. Thanks! Alan