plip: avoid rcu debug splat
authorFlorian Westphal <fw@strlen.de>
Sun, 7 Aug 2022 11:53:04 +0000 (13:53 +0200)
committerJakub Kicinski <kuba@kernel.org>
Tue, 9 Aug 2022 19:16:02 +0000 (12:16 -0700)
WARNING: suspicious RCU usage
5.2.0-rc2-00605-g2638eb8b50cfc #1 Not tainted
drivers/net/plip/plip.c:1110 suspicious rcu_dereference_check() usage!

plip_open is called with RTNL held, switch to the correct helper.

Fixes: 2638eb8b50cf ("net: ipv4: provide __rcu annotation for ifa_list")
Reported-by: kernel test robot <oliver.sang@intel.com>
Signed-off-by: Florian Westphal <fw@strlen.de>
Link: https://lore.kernel.org/r/20220807115304.13257-1-fw@strlen.de
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/plip/plip.c

index dafd3e9ebbf871e4eca773d98b05a647f828c1be..c8791e9b451d2031c98d2bce96bacde3b0f9e929 100644 (file)
@@ -1111,7 +1111,7 @@ plip_open(struct net_device *dev)
                /* Any address will do - we take the first. We already
                   have the first two bytes filled with 0xfc, from
                   plip_init_dev(). */
-               const struct in_ifaddr *ifa = rcu_dereference(in_dev->ifa_list);
+               const struct in_ifaddr *ifa = rtnl_dereference(in_dev->ifa_list);
                if (ifa != NULL) {
                        dev_addr_mod(dev, 2, &ifa->ifa_local, 4);
                }