2019-12-19 16:21:54

by Daniel Borkmann

[permalink] [raw]
Subject: Re: [PATCH net] net: core: sysctl: fix compiler warning when only cBPF is present

On Wed, Dec 18, 2019 at 12:18:21PM +0300, Alexander Lobakin wrote:
> proc_dointvec_minmax_bpf_restricted() has been firstly introduced
> in commit 2e4a30983b0f ("bpf: restrict access to core bpf sysctls")
> under CONFIG_HAVE_EBPF_JIT. Then, this ifdef has been removed in
> ede95a63b5e8 ("bpf: add bpf_jit_limit knob to restrict unpriv
> allocations"), because a new sysctl, bpf_jit_limit, made use of it.
> Finally, this parameter has become long instead of integer with
> fdadd04931c2 ("bpf: fix bpf_jit_limit knob for PAGE_SIZE >= 64K")
> and thus, a new proc_dolongvec_minmax_bpf_restricted() has been
> added.
> With this last change, we got back to that
> proc_dointvec_minmax_bpf_restricted() is used only under
> CONFIG_HAVE_EBPF_JIT, but the corresponding ifdef has not been
> brought back.
>
> So, in configurations like CONFIG_BPF_JIT=y && CONFIG_HAVE_EBPF_JIT=n
> since v4.20 we have:
>
> CC net/core/sysctl_net_core.o
> net/core/sysctl_net_core.c:292:1: warning: ‘proc_dointvec_minmax_bpf_restricted’ defined but not used [-Wunused-function]
> 292 | proc_dointvec_minmax_bpf_restricted(struct ctl_table *table, int write,
> | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> Suppress this by guarding it with CONFIG_HAVE_EBPF_JIT again.
>
> Fixes: fdadd04931c2 ("bpf: fix bpf_jit_limit knob for PAGE_SIZE >= 64K")
> Signed-off-by: Alexander Lobakin <[email protected]>

Applied, thanks!