mirror of
https://github.com/Fishwaldo/linux-bl808.git
synced 2025-06-17 20:25:19 +00:00
tcp: annotate tp->snd_nxt lockless reads
There are few places where we fetch tp->snd_nxt while this field can change from IRQ or other cpu. We need to add READ_ONCE() annotations, and also make sure write sides use corresponding WRITE_ONCE() to avoid store-tearing. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
0f31746452
commit
e0d694d638
4 changed files with 13 additions and 9 deletions
|
@ -625,7 +625,8 @@ int tcp_ioctl(struct sock *sk, int cmd, unsigned long arg)
|
|||
if ((1 << sk->sk_state) & (TCPF_SYN_SENT | TCPF_SYN_RECV))
|
||||
answ = 0;
|
||||
else
|
||||
answ = READ_ONCE(tp->write_seq) - tp->snd_nxt;
|
||||
answ = READ_ONCE(tp->write_seq) -
|
||||
READ_ONCE(tp->snd_nxt);
|
||||
break;
|
||||
default:
|
||||
return -ENOIOCTLCMD;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue