On Tue, Feb 20, 2018 at 10:44 PM, Daniel Borkmann <dan...@iogearbox.net> wrote: > 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.
Sure, sent a new version now. I decided to clean up that #ifdef check as well, since a IS_ENABLED() check is nicer anway. Arnd