Hi Arnd, On 02/20/2018 10:16 PM, Arnd Bergmann wrote: > The only user of this variable is inside of an #ifdef, causing > a warning without CONFIG_INET: > > net/core/filter.c: In function '____bpf_sock_ops_cb_flags_set': > net/core/filter.c:3382:6: error: unused variable 'val' > [-Werror=unused-variable] > int val = argval & BPF_SOCK_OPS_ALL_CB_FLAGS; > > This adds the same #ifdef around the declaration. > > Fixes: b13d88072172 ("bpf: Adds field bpf_sock_ops_cb_flags to tcp_sock") > Signed-off-by: Arnd Bergmann <a...@arndb.de> > --- > net/core/filter.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/net/core/filter.c b/net/core/filter.c > index 08ab4c65a998..c3dc6d60b4bb 100644 > --- a/net/core/filter.c > +++ b/net/core/filter.c > @@ -3379,7 +3379,9 @@ BPF_CALL_2(bpf_sock_ops_cb_flags_set, struct > bpf_sock_ops_kern *, bpf_sock, > int, argval) > { > struct sock *sk = bpf_sock->sk; > +#ifdef CONFIG_INET > int val = argval & BPF_SOCK_OPS_ALL_CB_FLAGS; > +#endif
Looks good, thanks for the fix! Could you move the existing '#ifdef CONFIG_INET' to the beginning of the function given the only error in case of !CONFIG_INET is -EINVAL anyway? That would at least not increase the ifdef ugliness further. Thanks a lot, Daniel > if (!sk_fullsock(sk)) > return -EINVAL; >