diff options
Diffstat (limited to 'net/ipv4/tcp_ipv4.c')
-rw-r--r-- | net/ipv4/tcp_ipv4.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c index 492bf6a6b023..ffa366099eb2 100644 --- a/net/ipv4/tcp_ipv4.c +++ b/net/ipv4/tcp_ipv4.c | |||
@@ -478,7 +478,7 @@ int tcp_v4_err(struct sk_buff *icmp_skb, u32 info) | |||
478 | icsk = inet_csk(sk); | 478 | icsk = inet_csk(sk); |
479 | tp = tcp_sk(sk); | 479 | tp = tcp_sk(sk); |
480 | /* XXX (TFO) - tp->snd_una should be ISN (tcp_create_openreq_child() */ | 480 | /* XXX (TFO) - tp->snd_una should be ISN (tcp_create_openreq_child() */ |
481 | fastopen = tp->fastopen_rsk; | 481 | fastopen = rcu_dereference(tp->fastopen_rsk); |
482 | snd_una = fastopen ? tcp_rsk(fastopen)->snt_isn : tp->snd_una; | 482 | snd_una = fastopen ? tcp_rsk(fastopen)->snt_isn : tp->snd_una; |
483 | if (sk->sk_state != TCP_LISTEN && | 483 | if (sk->sk_state != TCP_LISTEN && |
484 | !between(seq, snd_una, tp->snd_nxt)) { | 484 | !between(seq, snd_una, tp->snd_nxt)) { |
@@ -2121,7 +2121,7 @@ void tcp_v4_destroy_sock(struct sock *sk) | |||
2121 | if (inet_csk(sk)->icsk_bind_hash) | 2121 | if (inet_csk(sk)->icsk_bind_hash) |
2122 | inet_put_port(sk); | 2122 | inet_put_port(sk); |
2123 | 2123 | ||
2124 | BUG_ON(tp->fastopen_rsk); | 2124 | BUG_ON(rcu_access_pointer(tp->fastopen_rsk)); |
2125 | 2125 | ||
2126 | /* If socket is aborted during connect operation */ | 2126 | /* If socket is aborted during connect operation */ |
2127 | tcp_free_fastopen_req(tp); | 2127 | tcp_free_fastopen_req(tp); |