=============================
WARNING: suspicious RCU usage
6.8.0-rc2-syzkaller-00199-g021533194476 #0 Not tainted
-----------------------------
net/netfilter/ipset/ip_set_hash_gen.h:455 suspicious rcu_dereference_protected() usage!
other info that might help us debug this:
rcu_scheduler_active = 2, debug_locks = 1
3 locks held by syz-executor.3/5109:
#0: ffff888022960420 (sb_writers#5){.+.+}-{0:0}, at: mnt_want_write+0x3f/0x90 fs/namespace.c:409
#1: ffff8880123a02d0 (&type->i_mutex_dir_key#5/1){+.+.}-{3:3}, at: inode_lock_nested include/linux/fs.h:837 [inline]
#1: ffff8880123a02d0 (&type->i_mutex_dir_key#5/1){+.+.}-{3:3}, at: filename_create+0x260/0x540 fs/namei.c:3891
#2: ffffffff8e130ba0 (rcu_callback){....}-{0:0}, at: rcu_lock_acquire include/linux/rcupdate.h:298 [inline]
#2: ffffffff8e130ba0 (rcu_callback){....}-{0:0}, at: rcu_do_batch kernel/rcu/tree.c:2184 [inline]
#2: ffffffff8e130ba0 (rcu_callback){....}-{0:0}, at: rcu_core+0xcfc/0x1810 kernel/rcu/tree.c:2465
stack backtrace:
CPU: 0 PID: 5109 Comm: syz-executor.3 Not tainted 6.8.0-rc2-syzkaller-00199-g021533194476 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/25/2024
Call Trace:
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0x1e7/0x2e0 lib/dump_stack.c:106
lockdep_rcu_suspicious+0x220/0x340 kernel/locking/lockdep.c:6712
hash_netportnet6_destroy+0xf0/0x2c0 net/netfilter/ipset/ip_set_hash_gen.h:455
ip_set_destroy_set net/netfilter/ipset/ip_set_core.c:1180 [inline]
ip_set_destroy_set_rcu+0x6a/0xe0 net/netfilter/ipset/ip_set_core.c:1190
rcu_do_batch kernel/rcu/tree.c:2190 [inline]
rcu_core+0xd76/0x1810 kernel/rcu/tree.c:2465
__do_softirq+0x2bb/0x942 kernel/softirq.c:553
invoke_softirq kernel/softirq.c:427 [inline]
__irq_exit_rcu+0xf1/0x1c0 kernel/softirq.c:632
irq_exit_rcu+0x9/0x30 kernel/softirq.c:644
sysvec_apic_timer_interrupt+0x97/0xb0 arch/x86/kernel/apic/apic.c:1076
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:649
RIP: 0010:lock_is_held_type+0x13a/0x190
Code: 75 44 48 c7 04 24 00 00 00 00 9c 8f 04 24 f7 04 24 00 02 00 00 75 4c 41 f7 c4 00 02 00 00 74 01 fb 65 48 8b 04 25 28 00 00 00 <48> 3b 44 24 08 75 42 89 d8 48 83 c4 10 5b 41 5c 41 5d 41 5e 41 5f
RSP: 0018:ffffc900042c79b8 EFLAGS: 00000206
RAX: a3d976e2bd122b00 RBX: 0000000000000000 RCX: ffff8880223e8000
RDX: 0000000000000000 RSI: ffffffff8baac6e0 RDI: ffffffff8bfe67e0
RBP: 0000000000000002 R08: ffffffff8f8553af R09: 1ffffffff1f0aa75
R10: dffffc0000000000 R11: fffffbfff1f0aa76 R12: 0000000000000246
R13: ffff8880223e8000 R14: 00000000ffffffff R15: ffffffff8e130a60
lock_is_held include/linux/lockdep.h:231 [inline]
__might_resched+0xf4/0x780 kernel/sched/core.c:10138
might_alloc include/linux/sched/mm.h:306 [inline]
slab_pre_alloc_hook mm/slub.c:3761 [inline]
slab_alloc_node mm/slub.c:3842 [inline]
kmem_cache_alloc+0x68/0x340 mm/slub.c:3867
kmem_cache_zalloc include/linux/slab.h:701 [inline]
lsm_inode_alloc security/security.c:669 [inline]
security_inode_alloc+0x28/0x120 security/security.c:1578
inode_init_always+0x947/0xc70 fs/inode.c:231
alloc_inode fs/inode.c:267 [inline]
new_inode_pseudo+0x9e/0x1e0 fs/inode.c:1005
new_inode+0x22/0x1d0 fs/inode.c:1031
__shmem_get_inode mm/shmem.c:2477 [inline]
shmem_get_inode+0x34a/0xd40 mm/shmem.c:2548
shmem_mknod+0x5f/0x1d0 mm/shmem.c:3242
shmem_mkdir+0x33/0x70 mm/shmem.c:3303
vfs_mkdir+0x2f9/0x4b0 fs/namei.c:4122
do_mkdirat+0x264/0x3a0 fs/namei.c:4145
__do_sys_mkdirat fs/namei.c:4160 [inline]
__se_sys_mkdirat fs/namei.c:4158 [inline]
__ia32_sys_mkdirat+0x89/0xa0 fs/namei.c:4158
do_syscall_32_irqs_on arch/x86/entry/common.c:165 [inline]
__do_fast_syscall_32+0xbd/0x120 arch/x86/entry/common.c:321
do_fast_syscall_32+0x33/0x70 arch/x86/entry/common.c:346
entry_SYSENTER_compat_after_hwframe+0x7c/0x86
RIP: 0023:0xf725a579
Code: b8 01 10 06 03 74 b4 01 10 07 03 74 b0 01 10 08 03 74 d8 01 00 00 00 00 00 00 00 00 00 00 00 00 00 51 52 55 89 e5 0f 34 cd 80 <5d> 5a 59 c3 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90
RSP: 002b:00000000f74fbd48 EFLAGS: 00000206 ORIG_RAX: 0000000000000128
RAX: ffffffffffffffda RBX: 00000000ffffff9c RCX: 00000000f74fbdf4
RDX: 00000000000001ff RSI: 00000000f74fbdf4 RDI: 00000000f73b0ff4
RBP: 0000000000000bb8 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000206 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000000
vkms_vblank_simulate: vblank timer overrun
----------------
Code disassembly (best guess):
0: 75 44 jne 0x46
2: 48 c7 04 24 00 00 00 movq $0x0,(%rsp)
9: 00
a: 9c pushf
b: 8f 04 24 pop (%rsp)
e: f7 04 24 00 02 00 00 testl $0x200,(%rsp)
15: 75 4c jne 0x63
17: 41 f7 c4 00 02 00 00 test $0x200,%r12d
1e: 74 01 je 0x21
20: fb sti
21: 65 48 8b 04 25 28 00 mov %gs:0x28,%rax
28: 00 00
* 2a: 48 3b 44 24 08 cmp 0x8(%rsp),%rax <-- trapping instruction
2f: 75 42 jne 0x73
31: 89 d8 mov %ebx,%eax
33: 48 83 c4 10 add $0x10,%rsp
37: 5b pop %rbx
38: 41 5c pop %r12
3a: 41 5d pop %r13
3c: 41 5e pop %r14
3e: 41 5f pop %r15