On 3/5/20 2:01 PM, KP Singh wrote: > From: KP Singh <kpsingh@xxxxxxxxxx> > > test_run.o is not built when CONFIG_NET is not set and > bpf_prog_test_run_tracing being referenced in bpf_trace.o causes the > linker error: > > ld: kernel/trace/bpf_trace.o:(.rodata+0x38): undefined reference to > `bpf_prog_test_run_tracing' > > Add a __weak function in bpf_trace.c to handle this. > > Fixes: da00d2f117a0 ("bpf: Add test ops for BPF_PROG_TYPE_TRACING") > Signed-off-by: KP Singh <kpsingh@xxxxxxxxxx> Reported-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> Acked-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> # build-tested Thanks. > --- > kernel/trace/bpf_trace.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/kernel/trace/bpf_trace.c b/kernel/trace/bpf_trace.c > index 363e0a2c75cf..6a490d8ce9de 100644 > --- a/kernel/trace/bpf_trace.c > +++ b/kernel/trace/bpf_trace.c > @@ -1252,6 +1252,13 @@ static bool tracing_prog_is_valid_access(int off, int size, > return btf_ctx_access(off, size, type, prog, info); > } > > +int __weak bpf_prog_test_run_tracing(struct bpf_prog *prog, > + const union bpf_attr *kattr, > + union bpf_attr __user *uattr) > +{ > + return -ENOTSUPP; > +} > + > const struct bpf_verifier_ops raw_tracepoint_verifier_ops = { > .get_func_proto = raw_tp_prog_func_proto, > .is_valid_access = raw_tp_prog_is_valid_access, > -- ~Randy