diff options
author | John Fastabend <john.fastabend@gmail.com> | 2017-08-16 15:02:12 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2017-08-16 15:34:13 -0700 |
commit | cf56e3b98c5358883c8df5ed8e04661481225a8f (patch) | |
tree | beb2cb4c505c1164b06db372da24c208dec59873 | |
parent | d978db8dbebb60a51492da966689dfc0c9216c44 (diff) | |
download | op-kernel-dev-cf56e3b98c5358883c8df5ed8e04661481225a8f.zip op-kernel-dev-cf56e3b98c5358883c8df5ed8e04661481225a8f.tar.gz |
bpf: sockmap state change warning fix
psock will uninitialized in default case we need to do the same psock lookup
and check as in other branch. Fixes compile warning below.
kernel/bpf/sockmap.c: In function ‘smap_state_change’:
kernel/bpf/sockmap.c:156:21: warning: ‘psock’ may be used uninitialized in this function [-Wmaybe-uninitialized]
struct smap_psock *psock;
Fixes: 174a79ff9515 ("bpf: sockmap with sk redirect support")
Reported-by: David Miller <davem@davemloft.net>
Signed-off-by: John Fastabend <john.fastabend@gmail.com>
Acked-by: Daniel Borkmann <daniel@iogearbox.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | kernel/bpf/sockmap.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/kernel/bpf/sockmap.c b/kernel/bpf/sockmap.c index 792f0ad..f7e5e6c 100644 --- a/kernel/bpf/sockmap.c +++ b/kernel/bpf/sockmap.c @@ -188,6 +188,9 @@ static void smap_state_change(struct sock *sk) smap_release_sock(sk); break; default: + psock = smap_psock_sk(sk); + if (unlikely(!psock)) + break; smap_report_sk_error(psock, EPIPE); break; } |