[linus:master] [netfilter] 4e7aaa6b82: WARNING:suspicious_RCU_usage

From: kernel test robot
Date: Fri Jun 14 2024 - 03:45:08 EST




Hello,

kernel test robot noticed "WARNING:suspicious_RCU_usage" on:

commit: 4e7aaa6b82d63e8ddcbfb56b4fd3d014ca586f10 ("netfilter: ipset: Fix race between namespace cleanup and gc in the list:set type")
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git master

[test failed on linux-next/master 6906a84c482f098d31486df8dc98cead21cce2d0]

in testcase: boot

compiler: clang-18
test machine: qemu-system-x86_64 -enable-kvm -cpu SandyBridge -smp 2 -m 16G

(please refer to attached dmesg/kmsg for entire log/backtrace)


+--------------------------------------------------------------------------------+------------+------------+
| | c4ab9da85b | 4e7aaa6b82 |
+--------------------------------------------------------------------------------+------------+------------+
| WARNING:suspicious_RCU_usage | 0 | 6 |
| net/netfilter/ipset/ip_set_core.c:#suspicious_rcu_dereference_protected()usage | 0 | 6 |
+--------------------------------------------------------------------------------+------------+------------+


If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <oliver.sang@xxxxxxxxx>
| Closes: https://lore.kernel.org/oe-lkp/202406141556.e0b6f17e-lkp@xxxxxxxxx


[ 33.826616][ T31] WARNING: suspicious RCU usage
[ 33.826862][ T31] 6.10.0-rc2-00244-g4e7aaa6b82d6 #1 Not tainted
[ 33.827175][ T31] -----------------------------
[ 33.827419][ T31] net/netfilter/ipset/ip_set_core.c:1200 suspicious rcu_dereference_protected() usage!
[ 33.827894][ T31]
[ 33.827894][ T31] other info that might help us debug this:
[ 33.827894][ T31]
[ 33.828404][ T31]
[ 33.828404][ T31] rcu_scheduler_active = 2, debug_locks = 1
[ 33.828806][ T31] 3 locks held by kworker/u8:2/31:
[ 33.829109][ T31] #0: ffff8af0c1a58158 ((wq_completion)netns){+.+.}-{0:0}, at: process_scheduled_works (kernel/workqueue.c:3206)
[ 33.829668][ T31] #1: ffff8af0c466fe38 (net_cleanup_work){+.+.}-{0:0}, at: process_scheduled_works (kernel/workqueue.c:3207)
[ 33.830204][ T31] #2: ffffffff8b263070 (pernet_ops_rwsem){++++}-{3:3}, at: cleanup_net (net/core/net_namespace.c:597)
[ 33.830685][ T31]
[ 33.830685][ T31] stack backtrace:
[ 33.830983][ T31] CPU: 0 PID: 31 Comm: kworker/u8:2 Not tainted 6.10.0-rc2-00244-g4e7aaa6b82d6 #1
[ 33.831438][ T31] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[ 33.831947][ T31] Workqueue: netns cleanup_net
[ 33.832193][ T31] Call Trace:
[ 33.832366][ T31] <TASK>
[ 33.832519][ T31] dump_stack_lvl (lib/dump_stack.c:116)
[ 33.832769][ T31] lockdep_rcu_suspicious (include/linux/context_tracking.h:122)
[ 33.833053][ T31] _destroy_all_sets (net/netfilter/ipset/ip_set_core.c:?)
[ 33.833313][ T31] ip_set_net_exit (net/netfilter/ipset/ip_set_core.c:2397)
[ 33.833554][ T31] cleanup_net (net/core/net_namespace.c:174 net/core/net_namespace.c:640)
[ 33.833789][ T31] ? process_scheduled_works (kernel/workqueue.c:3206)
[ 33.834080][ T31] process_scheduled_works (kernel/workqueue.c:3236)
[ 33.834364][ T31] ? process_scheduled_works (kernel/workqueue.c:3207)
[ 33.834664][ T31] worker_thread (kernel/workqueue.c:?)
[ 33.834924][ T31] kthread (kernel/kthread.c:391)
[ 33.835137][ T31] ? pr_cont_work (kernel/workqueue.c:3339)
[ 33.835384][ T31] ? kthread_unuse_mm (kernel/kthread.c:342)
[ 33.835645][ T31] ret_from_fork (arch/x86/kernel/process.c:153)
[ 33.835876][ T31] ? kthread_unuse_mm (kernel/kthread.c:342)
[ 33.836137][ T31] ret_from_fork_asm (arch/x86/entry/entry_64.S:257)
[ 33.836402][ T31] </TASK>
[ 33.836598][ T31]
[ 33.836723][ T31] =============================
[ 33.836976][ T31] WARNING: suspicious RCU usage
[ 33.837221][ T31] 6.10.0-rc2-00244-g4e7aaa6b82d6 #1 Not tainted
[ 33.837534][ T31] -----------------------------
[ 33.837779][ T31] net/netfilter/ipset/ip_set_core.c:1211 suspicious rcu_dereference_protected() usage!
[ 33.838255][ T31]
[ 33.838255][ T31] other info that might help us debug this:
[ 33.838255][ T31]
[ 33.838760][ T31]
[ 33.838760][ T31] rcu_scheduler_active = 2, debug_locks = 1
[ 33.839161][ T31] 3 locks held by kworker/u8:2/31:
[ 33.839420][ T31] #0: ffff8af0c1a58158 ((wq_completion)netns){+.+.}-{0:0}, at: process_scheduled_works (kernel/workqueue.c:3206)
[ 33.839973][ T31] #1: ffff8af0c466fe38 (net_cleanup_work){+.+.}-{0:0}, at: process_scheduled_works (kernel/workqueue.c:3207)
[ 33.840513][ T31] #2: ffffffff8b263070 (pernet_ops_rwsem){++++}-{3:3}, at: cleanup_net (net/core/net_namespace.c:597)
[ 33.840998][ T31]
[ 33.840998][ T31] stack backtrace:
[ 33.841292][ T31] CPU: 0 PID: 31 Comm: kworker/u8:2 Not tainted 6.10.0-rc2-00244-g4e7aaa6b82d6 #1
[ 33.841748][ T31] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.16.2-debian-1.16.2-1 04/01/2014
[ 33.842259][ T31] Workqueue: netns cleanup_net
[ 33.842506][ T31] Call Trace:
[ 33.842675][ T31] <TASK>
[ 33.842827][ T31] dump_stack_lvl (lib/dump_stack.c:116)
[ 33.843074][ T31] lockdep_rcu_suspicious (include/linux/context_tracking.h:122)
[ 33.843355][ T31] _destroy_all_sets (net/netfilter/ipset/ip_set_core.c:?)
[ 33.843613][ T31] ip_set_net_exit (net/netfilter/ipset/ip_set_core.c:2397)
[ 33.843852][ T31] cleanup_net (net/core/net_namespace.c:174 net/core/net_namespace.c:640)
[ 33.844087][ T31] ? process_scheduled_works (kernel/workqueue.c:3206)
[ 33.844384][ T31] process_scheduled_works (kernel/workqueue.c:3236)
[ 33.844668][ T31] ? process_scheduled_works (kernel/workqueue.c:3207)
[ 33.844967][ T31] worker_thread (kernel/workqueue.c:?)
[ 33.845212][ T31] kthread (kernel/kthread.c:391)
[ 33.845424][ T31] ? pr_cont_work (kernel/workqueue.c:3339)
[ 33.845668][ T31] ? kthread_unuse_mm (kernel/kthread.c:342)
[ 33.845927][ T31] ret_from_fork (arch/x86/kernel/process.c:153)
[ 33.846155][ T31] ? kthread_unuse_mm (kernel/kthread.c:342)
[ 33.846416][ T31] ret_from_fork_asm (arch/x86/entry/entry_64.S:257)
[ 33.846673][ T31] </TASK>



The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20240614/202406141556.e0b6f17e-lkp@xxxxxxxxx



--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki