]> git.baikalelectronics.ru Git - kernel.git/commit
tcp: fix access to sk->sk_state in tcp_poll()
authorDavide Caratti <dcaratti@redhat.com>
Wed, 26 Apr 2017 17:07:35 +0000 (19:07 +0200)
committerDavid S. Miller <davem@davemloft.net>
Mon, 1 May 2017 02:24:16 +0000 (22:24 -0400)
commit5887a25348b86cf4b575c4c7b44397f78110a29e
tree275aa6efd067897bd1c2e518ac66849d4b386269
parentced5209ff058238952846e423b206aacde309e7b
tcp: fix access to sk->sk_state in tcp_poll()

avoid direct access to sk->sk_state when tcp_poll() is called on a socket
using active TCP fastopen with deferred connect. Use local variable
'state', which stores the result of sk_state_load(), like it was done in
commit e537c8df2322 ("tcp: ensure proper barriers in lockless contexts").

Fixes: 9d74d5052268 ("net/tcp-fastopen: Add new API support")
Signed-off-by: Davide Caratti <dcaratti@redhat.com>
Acked-by: Wei Wang <weiwan@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/tcp.c