tcp: Fix a data-race around sysctl_tcp_adv_win_scale.
[linux.git] / include / net / tcp.h
index 071735e10872c1d6cf603f4673f7a20965fb3a7c..78a64e1b33a7e70b586bdb420b06694d5a98fae0 100644 (file)
@@ -1419,7 +1419,7 @@ void tcp_select_initial_window(const struct sock *sk, int __space,
 
 static inline int tcp_win_from_space(const struct sock *sk, int space)
 {
-       int tcp_adv_win_scale = sock_net(sk)->ipv4.sysctl_tcp_adv_win_scale;
+       int tcp_adv_win_scale = READ_ONCE(sock_net(sk)->ipv4.sysctl_tcp_adv_win_scale);
 
        return tcp_adv_win_scale <= 0 ?
                (space>>(-tcp_adv_win_scale)) :
This page took 0.034897 seconds and 4 git commands to generate.