]> xenbits.xensource.com Git - people/aperard/linux.git/commitdiff
netrom: Fix a data-race around sysctl_netrom_transport_requested_window_size
authorJason Xing <kernelxing@tencent.com>
Mon, 4 Mar 2024 08:20:42 +0000 (16:20 +0800)
committerSasha Levin <sashal@kernel.org>
Fri, 15 Mar 2024 14:48:17 +0000 (10:48 -0400)
[ Upstream commit a2e706841488f474c06e9b33f71afc947fb3bf56 ]

We need to protect the reader reading the sysctl value because the
value can be changed concurrently.

Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Signed-off-by: Jason Xing <kernelxing@tencent.com>
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/netrom/af_netrom.c

index ee6621c0d2e4595c8c66414cc97aeca7d691c45e..88941b66631fca60794bccc51d1897545165edca 100644 (file)
@@ -462,7 +462,7 @@ static int nr_create(struct net *net, struct socket *sock, int protocol,
                msecs_to_jiffies(READ_ONCE(sysctl_netrom_transport_busy_delay));
        nr->idle   =
                msecs_to_jiffies(sysctl_netrom_transport_no_activity_timeout);
-       nr->window = sysctl_netrom_transport_requested_window_size;
+       nr->window = READ_ONCE(sysctl_netrom_transport_requested_window_size);
 
        nr->bpqext = 1;
        nr->state  = NR_STATE_0;