[PATCH bpf-next] bpf: Fix bpf_prog_test_run_tracing for !CONFIG_NET

Randy Dunlap rdunlap at infradead.org
Thu Mar 5 23:12:42 UTC 2020


On 3/5/20 2:01 PM, KP Singh wrote:
> From: KP Singh <kpsingh at google.com>
> 
> 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 at google.com>

Reported-by: Randy Dunlap <rdunlap at infradead.org>
Acked-by: Randy Dunlap <rdunlap at infradead.org> # 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



More information about the Linux-security-module-archive mailing list