diff options
| author | Kuniyuki Iwashima <kuniyu@amazon.com> | 2022-08-23 10:46:51 -0700 |
|---|---|---|
| committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2022-08-31 17:18:09 +0200 |
| commit | 05d92723f99cf5c15ae74cc196193c2dbaa9a12c (patch) | |
| tree | e3ea99011b2b215226c7c5551e7de6ac7c8b09c4 /include | |
| parent | 6fc89f990716ec516dfd817c785daab5be6d98aa (diff) | |
| download | linux-05d92723f99cf5c15ae74cc196193c2dbaa9a12c.tar.gz linux-05d92723f99cf5c15ae74cc196193c2dbaa9a12c.tar.bz2 linux-05d92723f99cf5c15ae74cc196193c2dbaa9a12c.zip | |
net: Fix a data-race around sysctl_net_busy_poll.
[ Upstream commit c42b7cddea47503411bfb5f2f93a4154aaffa2d9 ]
While reading sysctl_net_busy_poll, it can be changed concurrently.
Thus, we need to add READ_ONCE() to its reader.
Fixes: 060212928670 ("net: add low latency socket poll")
Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'include')
| -rw-r--r-- | include/net/busy_poll.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/include/net/busy_poll.h b/include/net/busy_poll.h index c4898fcbf923..f90f0021f5f2 100644 --- a/include/net/busy_poll.h +++ b/include/net/busy_poll.h @@ -33,7 +33,7 @@ extern unsigned int sysctl_net_busy_poll __read_mostly; static inline bool net_busy_loop_on(void) { - return sysctl_net_busy_poll; + return READ_ONCE(sysctl_net_busy_poll); } static inline bool sk_can_busy_loop(const struct sock *sk) |
