projects
/
linux-2.6-microblaze.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
41ec374
)
ipv6: annotate data-races around devconf->rpl_seg_enabled
author
Yue Haibing
<yuehaibing@huawei.com>
Mon, 1 Sep 2025 12:37:25 +0000
(20:37 +0800)
committer
Jakub Kicinski
<kuba@kernel.org>
Wed, 3 Sep 2025 00:01:06 +0000
(17:01 -0700)
devconf->rpl_seg_enabled can be changed concurrently from
/proc/sys/net/ipv6/conf, annotate lockless reads on it.
Signed-off-by: Yue Haibing <yuehaibing@huawei.com>
Link:
https://patch.msgid.link/20250901123726.1972881-2-yuehaibing@huawei.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/ipv6/exthdrs.c
patch
|
blob
|
history
diff --git
a/net/ipv6/exthdrs.c
b/net/ipv6/exthdrs.c
index
d1ef964
..
a23eb87
100644
(file)
--- a/
net/ipv6/exthdrs.c
+++ b/
net/ipv6/exthdrs.c
@@
-494,10
+494,8
@@
static int ipv6_rpl_srh_rcv(struct sk_buff *skb)
idev = __in6_dev_get(skb->dev);
- accept_rpl_seg = net->ipv6.devconf_all->rpl_seg_enabled;
- if (accept_rpl_seg > idev->cnf.rpl_seg_enabled)
- accept_rpl_seg = idev->cnf.rpl_seg_enabled;
-
+ accept_rpl_seg = min(READ_ONCE(net->ipv6.devconf_all->rpl_seg_enabled),
+ READ_ONCE(idev->cnf.rpl_seg_enabled));
if (!accept_rpl_seg) {
kfree_skb(skb);
return -1;