syzbot


INFO: rcu detected stall in sys_unlink

Status: upstream: reported on 2024/01/23 10:50
Reported-by: syzbot+22bb0b3dbc38b0c7d00c@syzkaller.appspotmail.com
First crash: 99d, last: 29d
Similar bugs (5)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in sys_unlink (2) kernel 2 465d 549d 0/26 auto-obsoleted due to no activity on 2023/04/22 20:06
upstream INFO: rcu detected stall in sys_unlink (3) ext4 C error 20 18d 261d 0/26 upstream: reported C repro on 2023/08/13 23:42
upstream INFO: rcu detected stall in sys_unlink kasan mm 1 640d 640d 0/26 auto-obsoleted due to no activity on 2022/10/29 07:23
linux-5.15 INFO: rcu detected stall in sys_unlink 1 50d 50d 0/3 upstream: reported on 2024/03/12 14:47
android-5-15 BUG: soft lockup in sys_unlink 4 12h20m 15d 0/2 premoderation: reported on 2024/04/16 22:56

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	1-...!: (0 ticks this GP) idle=a54c/1/0x4000000000000000 softirq=129284/129284 fqs=0
	(detected by 0, t=10502 jiffies, g=183033, q=508 ncpus=2)
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 29870 Comm: syz-executor.0 Not tainted 6.1.83-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
RIP: 0010:kasan_check_range+0x1ac/0x290 mm/kasan/generic.c:189
Code: 4c 89 d5 48 8d 5d 07 48 85 ed 48 0f 49 dd 48 83 e3 f8 48 29 dd 74 12 41 80 39 00 0f 85 a2 00 00 00 49 ff c1 48 ff cd 75 ee 5b <41> 5e 41 5f 5d c3 45 84 f6 75 61 41 f7 c6 00 ff 00 00 75 5d 41 f7
RSP: 0018:ffffc900001e0a18 EFLAGS: 00000056
RAX: 0000000000000001 RBX: 000000000000002c RCX: ffffffff816abeda
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffff90497220
RBP: 0000000000000001 R08: dffffc0000000000 R09: fffffbfff2092e45
R10: 0000000000000000 R11: dffffc0000000001 R12: ffff8880224e8ad8
R13: dffffc0000000000 R14: fffffbfff2092e45 R15: ffff8880224e8b30
FS:  00005555569d2480(0000) GS:ffff8880b9900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b2ef3b000 CR3: 00000000649dc000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 instrument_atomic_read include/linux/instrumented.h:72 [inline]
 _test_bit include/asm-generic/bitops/instrumented-non-atomic.h:141 [inline]
 hlock_class kernel/locking/lockdep.c:228 [inline]
 mark_lock+0x9a/0x340 kernel/locking/lockdep.c:4606
 mark_usage kernel/locking/lockdep.c:4549 [inline]
 __lock_acquire+0xc6a/0x1f80 kernel/locking/lockdep.c:5003
 lock_acquire+0x1f8/0x5a0 kernel/locking/lockdep.c:5662
 rcu_lock_acquire include/linux/rcupdate.h:350 [inline]
 rcu_read_lock include/linux/rcupdate.h:791 [inline]
 advance_sched+0x6ec/0x970 net/sched/sch_taprio.c:753
 __run_hrtimer kernel/time/hrtimer.c:1686 [inline]
 __hrtimer_run_queues+0x5e5/0xe50 kernel/time/hrtimer.c:1750
 hrtimer_interrupt+0x392/0x980 kernel/time/hrtimer.c:1812
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1095 [inline]
 __sysvec_apic_timer_interrupt+0x156/0x580 arch/x86/kernel/apic/apic.c:1112
 sysvec_apic_timer_interrupt+0x8c/0xb0 arch/x86/kernel/apic/apic.c:1106
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:653
RIP: 0010:on_stack arch/x86/include/asm/stacktrace.h:55 [inline]
RIP: 0010:unwind_next_frame+0x194b/0x2220 arch/x86/kernel/unwind_orc.c:622
Code: 48 8b 44 24 60 80 3c 18 00 74 05 e8 7f 4d a5 00 4c 8b 7d 38 48 8d 7d 08 48 89 f8 48 c1 e8 03 80 3c 18 00 74 05 e8 65 4d a5 00 <4c> 8b 75 08 48 8d 5d 10 48 89 d8 48 c1 e8 03 48 b9 00 00 00 00 00
RSP: 0018:ffffc90003587320 EFLAGS: 00000246
RAX: 1ffff920006b0e81 RBX: dffffc0000000000 RCX: 1ffff920006b0e80
RDX: 0000000000000010 RSI: 0000000000000000 RDI: ffffc90003587408
RBP: ffffc90003587400 R08: dffffc0000000000 R09: ffffc90003587450
R10: 0000000000000000 R11: dffffc0000000001 R12: ffffc90003587400
R13: ffffffff8ef9cb1c R14: ffffffff8ef9cb18 R15: ffffc90003587f30
 arch_stack_walk+0x10d/0x140 arch/x86/kernel/stacktrace.c:25
 stack_trace_save+0x113/0x1c0 kernel/stacktrace.c:122
 save_stack+0xf6/0x1e0 mm/page_owner.c:127
 __reset_page_owner+0x52/0x1a0 mm/page_owner.c:148
 reset_page_owner include/linux/page_owner.h:24 [inline]
 free_pages_prepare mm/page_alloc.c:1440 [inline]
 free_pcp_prepare mm/page_alloc.c:1490 [inline]
 free_unref_page_prepare+0xf63/0x1120 mm/page_alloc.c:3358
 free_unref_page_list+0x663/0x900 mm/page_alloc.c:3499
 release_pages+0x2836/0x2b40 mm/swap.c:1055
 __pagevec_release+0x80/0xf0 mm/swap.c:1075
 pagevec_release include/linux/pagevec.h:71 [inline]
 folio_batch_release include/linux/pagevec.h:135 [inline]
 truncate_inode_pages_range+0x48a/0x1340 mm/truncate.c:372
 ext4_evict_inode+0x39c/0x1150 fs/ext4/inode.c:221
 evict+0x2a4/0x620 fs/inode.c:666
 do_unlinkat+0x509/0x820 fs/namei.c:4399
 __do_sys_unlink fs/namei.c:4440 [inline]
 __se_sys_unlink fs/namei.c:4438 [inline]
 __x64_sys_unlink+0x45/0x50 fs/namei.c:4438
 do_syscall_x64 arch/x86/entry/common.c:51 [inline]
 do_syscall_64+0x3d/0xb0 arch/x86/entry/common.c:81
 entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7f9e1147d557
Code: 73 01 c3 48 c7 c1 b0 ff ff ff f7 d8 64 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 b8 57 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b0 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffe48b1b198 EFLAGS: 00000206 ORIG_RAX: 0000000000000057
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f9e1147d557
RDX: 00007ffe48b1b1c0 RSI: 00007ffe48b1b250 RDI: 00007ffe48b1b250
RBP: 00007ffe48b1b250 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000100 R11: 0000000000000206 R12: 00007ffe48b1c310
R13: 00007f9e114c93b9 R14: 00000000000fd654 R15: 0000000000000011
 </TASK>
rcu: rcu_preempt kthread timer wakeup didn't happen for 10501 jiffies! g183033 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402
rcu: 	Possible timer handling issue on cpu=1 timer-softirq=75028
rcu: rcu_preempt kthread starved for 10502 jiffies! g183033 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 ->cpu=1
rcu: 	Unless rcu_preempt kthread gets sufficient CPU time, OOM is now expected behavior.
rcu: RCU grace-period kthread stack dump:
task:rcu_preempt     state:I stack:25016 pid:16    ppid:2      flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5245 [inline]
 __schedule+0x142d/0x4550 kernel/sched/core.c:6558
 schedule+0xbf/0x180 kernel/sched/core.c:6634
 schedule_timeout+0x1b9/0x300 kernel/time/timer.c:1935
 rcu_gp_fqs_loop+0x2d2/0x1120 kernel/rcu/tree.c:1706
 rcu_gp_kthread+0xa3/0x3a0 kernel/rcu/tree.c:1905
 kthread+0x28d/0x320 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:307
 </TASK>
rcu: Stack dump where RCU GP kthread last ran:
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 29870 Comm: syz-executor.0 Not tainted 6.1.83-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
RIP: 0010:__lock_acquire+0x476/0x1f80 kernel/locking/lockdep.c:4997
Code: 48 8b 44 24 08 44 89 20 48 8b 44 24 20 48 8d 5c c6 24 48 89 d8 48 c1 e8 03 0f b6 04 10 84 c0 4c 8b 64 24 18 0f 85 e3 12 00 00 <44> 89 33 44 89 fb 48 89 d8 48 c1 e8 06 48 8d 3c c5 20 72 49 90 be
RSP: 0018:ffffc900001e0a00 EFLAGS: 00000046
RAX: 0000000000000000 RBX: ffff8880224e8b7c RCX: 0000000000080000
RDX: dffffc0000000000 RSI: ffff8880224e8ae0 RDI: 0000000000004000
RBP: ffff8880224e8ac4 R08: 0000000000000001 R09: 0000000000000001
R10: 0000000000000000 R11: dffffc0000000001 R12: ffff8880224e8ad8
R13: ffff8880224e8000 R14: 0000000000000000 R15: 0000000000000000
FS:  00005555569d2480(0000) GS:ffff8880b9900000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b2ef3b000 CR3: 00000000649dc000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 lock_acquire+0x1f8/0x5a0 kernel/locking/lockdep.c:5662
 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
 _raw_spin_lock_irqsave+0xd1/0x120 kernel/locking/spinlock.c:162
 debug_object_deactivate+0x63/0x380 lib/debugobjects.c:752
 debug_hrtimer_deactivate kernel/time/hrtimer.c:425 [inline]
 debug_deactivate+0x1d/0x280 kernel/time/hrtimer.c:481
 __run_hrtimer kernel/time/hrtimer.c:1654 [inline]
 __hrtimer_run_queues+0x334/0xe50 kernel/time/hrtimer.c:1750
 hrtimer_interrupt+0x392/0x980 kernel/time/hrtimer.c:1812
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1095 [inline]
 __sysvec_apic_timer_interrupt+0x156/0x580 arch/x86/kernel/apic/apic.c:1112
 sysvec_apic_timer_interrupt+0x8c/0xb0 arch/x86/kernel/apic/apic.c:1106
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:653
RIP: 0010:on_stack arch/x86/include/asm/stacktrace.h:55 [inline]
RIP: 0010:unwind_next_frame+0x194b/0x2220 arch/x86/kernel/unwind_orc.c:622
Code: 48 8b 44 24 60 80 3c 18 00 74 05 e8 7f 4d a5 00 4c 8b 7d 38 48 8d 7d 08 48 89 f8 48 c1 e8 03 80 3c 18 00 74 05 e8 65 4d a5 00 <4c> 8b 75 08 48 8d 5d 10 48 89 d8 48 c1 e8 03 48 b9 00 00 00 00 00
RSP: 0018:ffffc90003587320 EFLAGS: 00000246
RAX: 1ffff920006b0e81 RBX: dffffc0000000000 RCX: 1ffff920006b0e80
RDX: 0000000000000010 RSI: 0000000000000000 RDI: ffffc90003587408
RBP: ffffc90003587400 R08: dffffc0000000000 R09: ffffc90003587450
R10: 0000000000000000 R11: dffffc0000000001 R12: ffffc90003587400
R13: ffffffff8ef9cb1c R14: ffffffff8ef9cb18 R15: ffffc90003587f30
 arch_stack_walk+0x10d/0x140 arch/x86/kernel/stacktrace.c:25
 stack_trace_save+0x113/0x1c0 kernel/stacktrace.c:122
 save_stack+0xf6/0x1e0 mm/page_owner.c:127
 __reset_page_owner+0x52/0x1a0 mm/page_owner.c:148
 reset_page_owner include/linux/page_owner.h:24 [inline]
 free_pages_prepare mm/page_alloc.c:1440 [inline]
 free_pcp_prepare mm/page_alloc.c:1490 [inline]
 free_unref_page_prepare+0xf63/0x1120 mm/page_alloc.c:3358
 free_unref_page_list+0x663/0x900 mm/page_alloc.c:3499
 release_pages+0x2836/0x2b40 mm/swap.c:1055
 __pagevec_release+0x80/0xf0 mm/swap.c:1075
 pagevec_release include/linux/pagevec.h:71 [inline]
 folio_batch_release include/linux/pagevec.h:135 [inline]
 truncate_inode_pages_range+0x48a/0x1340 mm/truncate.c:372
 ext4_evict_inode+0x39c/0x1150 fs/ext4/inode.c:221
 evict+0x2a4/0x620 fs/inode.c:666
 do_unlinkat+0x509/0x820 fs/namei.c:4399
 __do_sys_unlink fs/namei.c:4440 [inline]
 __se_sys_unlink fs/namei.c:4438 [inline]
 __x64_sys_unlink+0x45/0x50 fs/namei.c:4438
 do_syscall_x64 arch/x86/entry/common.c:51 [inline]
 do_syscall_64+0x3d/0xb0 arch/x86/entry/common.c:81
 entry_SYSCALL_64_after_hwframe+0x63/0xcd
RIP: 0033:0x7f9e1147d557
Code: 73 01 c3 48 c7 c1 b0 ff ff ff f7 d8 64 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 b8 57 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b0 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffe48b1b198 EFLAGS: 00000206 ORIG_RAX: 0000000000000057
RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007f9e1147d557
RDX: 00007ffe48b1b1c0 RSI: 00007ffe48b1b250 RDI: 00007ffe48b1b250
RBP: 00007ffe48b1b250 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000100 R11: 0000000000000206 R12: 00007ffe48b1c310
R13: 00007f9e114c93b9 R14: 00000000000fd654 R15: 0000000000000011
 </TASK>

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/04/02 14:52 linux-6.1.y e5cd595e23c1 eb2966c4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: rcu detected stall in sys_unlink
2024/01/23 10:49 linux-6.1.y 8fd7f4462453 1c0ecc51 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: rcu detected stall in sys_unlink
* Struck through repros no longer work on HEAD.