On 14/10/2019 19:48, Toke Høiland-Jørgensen wrote: > So that will end up with a single monolithic BPF program being loaded > (from the kernel PoV), right? That won't do; we want to be able to go > back to the component programs, and manipulate them as separate kernel > objects. Why's that? (Since it also applies to the static-linking PoC I'm putting together.) What do you gain by having the components be kernel-visible? (Bad analogy time: the kernel doesn't care about the .o files you linked together to make a userspace executable; any debugging you do on that relies on other userspace infrastructure — loading symbol tables into a debugger — to interpret things.) -Ed