summaryrefslogtreecommitdiffstats
path: root/include/net
diff options
context:
space:
mode:
authorKuniyuki Iwashima <kuniyu@amazon.com>2022-08-23 10:46:58 -0700
committerDavid S. Miller <davem@davemloft.net>2022-08-24 13:46:58 +0100
commit8db24af3f02ebdbf302196006ebb270c4c3a2706 (patch)
treede9bc7668e1523979c789b5cfe6ea578b10967ca /include/net
parenta5612ca10d1aa05624ebe72633e0c8c792970833 (diff)
downloadlinux-stable-8db24af3f02ebdbf302196006ebb270c4c3a2706.tar.gz
linux-stable-8db24af3f02ebdbf302196006ebb270c4c3a2706.tar.bz2
linux-stable-8db24af3f02ebdbf302196006ebb270c4c3a2706.zip
net: Fix a data-race around gro_normal_batch.
While reading gro_normal_batch, it can be changed concurrently. Thus, we need to add READ_ONCE() to its reader. Fixes: 323ebb61e32b ("net: use listified RX for handling GRO_NORMAL skbs") Signed-off-by: Kuniyuki Iwashima <kuniyu@amazon.com> Acked-by: Edward Cree <ecree.xilinx@gmail.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include/net')
-rw-r--r--include/net/gro.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/net/gro.h b/include/net/gro.h
index 867656b0739c..24003dea8fa4 100644
--- a/include/net/gro.h
+++ b/include/net/gro.h
@@ -439,7 +439,7 @@ static inline void gro_normal_one(struct napi_struct *napi, struct sk_buff *skb,
{
list_add_tail(&skb->list, &napi->rx_list);
napi->rx_count += segs;
- if (napi->rx_count >= gro_normal_batch)
+ if (napi->rx_count >= READ_ONCE(gro_normal_batch))
gro_normal_list(napi);
}