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

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/nr_route.c

index 89e12e6eea2efd92ed345ccb7f630f11687a964f..70480869ad1c566a8ab8a28c0d39bdae056ec596 100644 (file)
@@ -728,7 +728,7 @@ void nr_link_failed(ax25_cb *ax25, int reason)
        nr_neigh->ax25 = NULL;
        ax25_cb_put(ax25);
 
-       if (++nr_neigh->failed < sysctl_netrom_link_fails_count) {
+       if (++nr_neigh->failed < READ_ONCE(sysctl_netrom_link_fails_count)) {
                nr_neigh_put(nr_neigh);
                return;
        }