diff options
| author | Kuniyuki Iwashima <kuniyu@google.com> | 2026-03-01 01:17:20 +0300 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2026-03-03 05:49:39 +0300 |
| commit | 261950e0390b70f1f17947423a36b8d9baae80f2 (patch) | |
| tree | b94aa1257b4f75223220612b33e4fc7a94a91f92 /include/linux/timerqueue.h | |
| parent | 05068eaa67b29963c1249c3032658968f64993e6 (diff) | |
| download | linux-261950e0390b70f1f17947423a36b8d9baae80f2.tar.xz | |
ipmr: Annotate access to mrt->mroute_do_{pim,assert,wrvifwhole}.
These fields in struct mr_table are updated in ip_mroute_setsockopt()
under RTNL:
* mroute_do_pim
* mroute_do_assert
* mroute_do_wrvifwhole
However, ip_mroute_getsockopt() does not hold RTNL and read the first
two fields locklessly, and ip_mr_forward() reads all the three under
RCU. pim_rcv_v1() also reads mroute_do_pim locklessly.
Let's use WRITE_ONCE() and READ_ONCE() for them.
Signed-off-by: Kuniyuki Iwashima <kuniyu@google.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Link: https://patch.msgid.link/20260228221800.1082070-3-kuniyu@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'include/linux/timerqueue.h')
0 files changed, 0 insertions, 0 deletions
