syzbot


WARNING: suspicious RCU usage in kernfs_put

Status: upstream: reported on 2026/04/10 20:27
Subsystems: kernfs
[Documentation on labels]
Reported-by: syzbot+0dfe499ea713e0a15bec@syzkaller.appspotmail.com
First crash: 5d01h, last: 5d01h
Discussions (1)
Title Replies (including bot) Last reply
[syzbot] [kernfs?] WARNING: suspicious RCU usage in kernfs_put 0 (1) 2026/04/10 20:27

Sample crash report:
=============================
WARNING: suspicious RCU usage
syzkaller #0 Tainted: G             L     
-----------------------------
fs/kernfs/dir.c:579 suspicious rcu_dereference_check() usage!

other info that might help us debug this:


rcu_scheduler_active = 2, debug_locks = 1
2 locks held by kswapd0/78:
 #0: ffffffff8e9aa8a0 (fs_reclaim){+.+.}-{0:0}, at: balance_pgdat+0x1db/0x1ca0 mm/vmscan.c:6968
 #1: ffff888033c040e0 (&type->s_umount_key#57){.+.+}-{4:4}, at: super_trylock_shared fs/super.c:565 [inline]
 #1: ffff888033c040e0 (&type->s_umount_key#57){.+.+}-{4:4}, at: super_cache_scan+0x98/0x550 fs/super.c:198

stack backtrace:
CPU: 0 UID: 0 PID: 78 Comm: kswapd0 Tainted: G             L      syzkaller #0 PREEMPT(full) 
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/18/2026
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:94 [inline]
 dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120
 lockdep_rcu_suspicious.cold+0x4f/0xb1 kernel/locking/lockdep.c:6876
 kernfs_put.part.0+0x59c/0x610 fs/kernfs/dir.c:579
 kernfs_put+0x53/0x60 fs/kernfs/dir.c:602
 evict+0x3c2/0xad0 fs/inode.c:846
 iput_final fs/inode.c:1966 [inline]
 iput.part.0+0x605/0xf50 fs/inode.c:2015
 iput+0x35/0x40 fs/inode.c:1981
 dentry_unlink_inode+0x2a1/0x490 fs/dcache.c:467
 __dentry_kill+0x1d0/0x600 fs/dcache.c:670
 shrink_kill fs/dcache.c:1147 [inline]
 shrink_dentry_list+0x180/0x5e0 fs/dcache.c:1174
 prune_dcache_sb+0xea/0x150 fs/dcache.c:1256
 super_cache_scan+0x328/0x550 fs/super.c:223
 do_shrink_slab+0x416/0x11e0 mm/shrinker.c:437
 shrink_slab+0x171/0x12b0 mm/shrinker.c:664
 shrink_one+0x398/0x7f0 mm/vmscan.c:4928
 shrink_many mm/vmscan.c:4989 [inline]
 lru_gen_shrink_node mm/vmscan.c:5067 [inline]
 shrink_node+0x26a2/0x3e20 mm/vmscan.c:6047
 kswapd_shrink_node mm/vmscan.c:6894 [inline]
 balance_pgdat+0xbb7/0x1ca0 mm/vmscan.c:7070
 kswapd+0x556/0xba0 mm/vmscan.c:7343
 kthread+0x370/0x450 kernel/kthread.c:436
 ret_from_fork+0x754/0xd80 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
 </TASK>

=============================
WARNING: suspicious RCU usage
syzkaller #0 Tainted: G             L     
-----------------------------
fs/kernfs/dir.c:579 suspicious rcu_dereference_check() usage!

other info that might help us debug this:


rcu_scheduler_active = 2, debug_locks = 1
2 locks held by kswapd0/78:
 #0: ffffffff8e9aa8a0 (fs_reclaim){+.+.}-{0:0}, at: balance_pgdat+0x1db/0x1ca0 mm/vmscan.c:6968
 #1: ffff888033c040e0 (&type->s_umount_key#57){.+.+}-{4:4}, at: super_trylock_shared fs/super.c:565 [inline]
 #1: ffff888033c040e0 (&type->s_umount_key#57){.+.+}-{4:4}, at: super_cache_scan+0x98/0x550 fs/super.c:198

stack backtrace:
CPU: 0 UID: 0 PID: 78 Comm: kswapd0 Tainted: G             L      syzkaller #0 PREEMPT(full) 
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/18/2026
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:94 [inline]
 dump_stack_lvl+0x100/0x190 lib/dump_stack.c:120
 lockdep_rcu_suspicious.cold+0x4f/0xb1 kernel/locking/lockdep.c:6876
 kernfs_put.part.0+0x515/0x610 fs/kernfs/dir.c:579
 kernfs_put+0x53/0x60 fs/kernfs/dir.c:602
 evict+0x3c2/0xad0 fs/inode.c:846
 iput_final fs/inode.c:1966 [inline]
 iput.part.0+0x605/0xf50 fs/inode.c:2015
 iput+0x35/0x40 fs/inode.c:1981
 dentry_unlink_inode+0x2a1/0x490 fs/dcache.c:467
 __dentry_kill+0x1d0/0x600 fs/dcache.c:670
 shrink_kill fs/dcache.c:1147 [inline]
 shrink_dentry_list+0x180/0x5e0 fs/dcache.c:1174
 prune_dcache_sb+0xea/0x150 fs/dcache.c:1256
 super_cache_scan+0x328/0x550 fs/super.c:223
 do_shrink_slab+0x416/0x11e0 mm/shrinker.c:437
 shrink_slab+0x171/0x12b0 mm/shrinker.c:664
 shrink_one+0x398/0x7f0 mm/vmscan.c:4928
 shrink_many mm/vmscan.c:4989 [inline]
 lru_gen_shrink_node mm/vmscan.c:5067 [inline]
 shrink_node+0x26a2/0x3e20 mm/vmscan.c:6047
 kswapd_shrink_node mm/vmscan.c:6894 [inline]
 balance_pgdat+0xbb7/0x1ca0 mm/vmscan.c:7070
 kswapd+0x556/0xba0 mm/vmscan.c:7343
 kthread+0x370/0x450 kernel/kthread.c:436
 ret_from_fork+0x754/0xd80 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
 </TASK>
------------[ cut here ]------------
kernfs_put: tty/ptyd1: released with incorrect active_ref 0
WARNING: fs/kernfs/dir.c:579 at kernfs_put.part.0+0x478/0x610 fs/kernfs/dir.c:579, CPU#0: kswapd0/78
Modules linked in:
CPU: 0 UID: 0 PID: 78 Comm: kswapd0 Tainted: G             L      syzkaller #0 PREEMPT(full) 
Tainted: [L]=SOFTLOCKUP
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/18/2026
RIP: 0010:kernfs_put.part.0+0x483/0x610 fs/kernfs/dir.c:579
Code: 89 c6 89 44 24 1c e8 5c 2d 51 ff 8b 44 24 1c 85 c0 75 21 e8 9f 32 51 ff 48 8d 3d 88 21 29 0e 48 8b 54 24 10 44 89 f9 4c 89 e6 <67> 48 0f b9 3a e9 3a fc ff ff e8 7e 32 51 ff e8 d9 f0 34 ff 31 ff
RSP: 0018:ffffc9000236f2d8 EFLAGS: 00010293
RAX: 0000000000000000 RBX: ffff888023738000 RCX: 0000000000000000
RDX: ffff888022f9cea0 RSI: ffffffff8c2cde20 RDI: ffffffff90e03230
RBP: ffff88801facbc30 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000001 R12: ffffffff8c2cde20
R13: dffffc0000000000 R14: ffff88801c6b5868 R15: 0000000000000000
FS:  0000000000000000(0000) GS:ffff888124340000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055923cfd5ee8 CR3: 000000000e598000 CR4: 00000000003526f0
Call Trace:
 <TASK>
 kernfs_put+0x53/0x60 fs/kernfs/dir.c:602
 evict+0x3c2/0xad0 fs/inode.c:846
 iput_final fs/inode.c:1966 [inline]
 iput.part.0+0x605/0xf50 fs/inode.c:2015
 iput+0x35/0x40 fs/inode.c:1981
 dentry_unlink_inode+0x2a1/0x490 fs/dcache.c:467
 __dentry_kill+0x1d0/0x600 fs/dcache.c:670
 shrink_kill fs/dcache.c:1147 [inline]
 shrink_dentry_list+0x180/0x5e0 fs/dcache.c:1174
 prune_dcache_sb+0xea/0x150 fs/dcache.c:1256
 super_cache_scan+0x328/0x550 fs/super.c:223
 do_shrink_slab+0x416/0x11e0 mm/shrinker.c:437
 shrink_slab+0x171/0x12b0 mm/shrinker.c:664
 shrink_one+0x398/0x7f0 mm/vmscan.c:4928
 shrink_many mm/vmscan.c:4989 [inline]
 lru_gen_shrink_node mm/vmscan.c:5067 [inline]
 shrink_node+0x26a2/0x3e20 mm/vmscan.c:6047
 kswapd_shrink_node mm/vmscan.c:6894 [inline]
 balance_pgdat+0xbb7/0x1ca0 mm/vmscan.c:7070
 kswapd+0x556/0xba0 mm/vmscan.c:7343
 kthread+0x370/0x450 kernel/kthread.c:436
 ret_from_fork+0x754/0xd80 arch/x86/kernel/process.c:158
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:245
 </TASK>
----------------
Code disassembly (best guess):
   0:	89 c6                	mov    %eax,%esi
   2:	89 44 24 1c          	mov    %eax,0x1c(%rsp)
   6:	e8 5c 2d 51 ff       	call   0xff512d67
   b:	8b 44 24 1c          	mov    0x1c(%rsp),%eax
   f:	85 c0                	test   %eax,%eax
  11:	75 21                	jne    0x34
  13:	e8 9f 32 51 ff       	call   0xff5132b7
  18:	48 8d 3d 88 21 29 0e 	lea    0xe292188(%rip),%rdi        # 0xe2921a7
  1f:	48 8b 54 24 10       	mov    0x10(%rsp),%rdx
  24:	44 89 f9             	mov    %r15d,%ecx
  27:	4c 89 e6             	mov    %r12,%rsi
* 2a:	67 48 0f b9 3a       	ud1    (%edx),%rdi <-- trapping instruction
  2f:	e9 3a fc ff ff       	jmp    0xfffffc6e
  34:	e8 7e 32 51 ff       	call   0xff5132b7
  39:	e8 d9 f0 34 ff       	call   0xff34f117
  3e:	31 ff                	xor    %edi,%edi

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/04/06 20:19 upstream 591cd656a1bf 4440e7c2 .config console log report info [disk image] [vmlinux] [kernel image] ci-qemu-gce-upstream-auto WARNING: suspicious RCU usage in kernfs_put
* Struck through repros no longer work on HEAD.