]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
ipmr: Add __rcu to netns_ipv4.mrt.
authorKuniyuki Iwashima <kuniyu@google.com>
Sat, 2 May 2026 18:07:47 +0000 (18:07 +0000)
committerJakub Kicinski <kuba@kernel.org>
Tue, 5 May 2026 02:26:13 +0000 (19:26 -0700)
kernel test robot reported this Sparse warning:

  $ make C=1 net/ipv4/ipmr.o
  net/ipv4/ipmr.c:312:24: error: incompatible types in comparison expression (different address spaces):
  net/ipv4/ipmr.c:312:24:    struct mr_table [noderef] __rcu *
  net/ipv4/ipmr.c:312:24:    struct mr_table *

Let's add __rcu annotation to netns_ipv4.mrt.

Fixes: b3b6babf4751 ("ipmr: Free mr_table after RCU grace period.")
Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202605030032.glNApko7-lkp@intel.com/
Signed-off-by: Kuniyuki Iwashima <kuniyu@google.com>
Link: https://patch.msgid.link/20260502180755.359554-1-kuniyu@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
include/net/netns/ipv4.h

index 80ccd4dda8e0fcdde0b45956eeedd9b2242ab863..6e27c56514df57038f6212aba905b60c12be285a 100644 (file)
@@ -275,7 +275,7 @@ struct netns_ipv4 {
 
 #ifdef CONFIG_IP_MROUTE
 #ifndef CONFIG_IP_MROUTE_MULTIPLE_TABLES
-       struct mr_table         *mrt;
+       struct mr_table __rcu   *mrt;
 #else
        struct list_head        mr_tables;
        struct fib_rules_ops    *mr_rules_ops;