syzbot


INFO: rcu detected stall in mmap_pgoff (2)

Status: upstream: reported on 2024/07/04 06:23
Reported-by: syzbot+de84462faf002a8c8dcf@syzkaller.appspotmail.com
First crash: 274d, last: 25d
Similar bugs (8)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in mmap_pgoff (6) fs 6 197d 293d 0/28 auto-obsoleted due to no activity on 2024/12/18 09:17
upstream INFO: rcu detected stall in mmap_pgoff (5) mm fs 2 617d 646d 0/28 auto-obsoleted due to no activity on 2023/10/25 16:56
linux-4.19 INFO: rcu detected stall in mmap_pgoff syz error 2 1444d 1513d 0/1 upstream: reported syz repro on 2021/02/11 18:33
linux-5.15 INFO: rcu detected stall in mmap_pgoff 1 543d 543d 0/3 auto-obsoleted due to no activity on 2024/01/17 20:08
upstream INFO: rcu detected stall in mmap_pgoff (4) mm 1 744d 744d 0/28 auto-obsoleted due to no activity on 2023/05/21 07:37
upstream INFO: rcu detected stall in mmap_pgoff crypto 3 1237d 1245d 0/28 closed as invalid on 2022/02/08 10:00
upstream INFO: rcu detected stall in mmap_pgoff (3) mm 1 935d 935d 0/28 auto-obsoleted due to no activity on 2022/12/11 19:43
upstream INFO: rcu detected stall in mmap_pgoff (2) kernel 1 1134d 1134d 0/28 auto-closed as invalid on 2022/05/26 19:52

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	Tasks blocked on level-0 rcu_node (CPUs 0-1): P7010/1:b..l
	(detected by 0, t=10502 jiffies, g=25053, q=171)
task:syz.6.573       state:R  running task     stack:23992 pid: 7010 ppid:  5931 flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5027 [inline]
 __schedule+0x12c4/0x45b0 kernel/sched/core.c:6373
 preempt_schedule_irq+0xf7/0x1c0 kernel/sched/core.c:6777
 irqentry_exit+0x53/0x80 kernel/entry/common.c:432
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:676
RIP: 0010:arch_test_and_set_bit arch/x86/include/asm/bitops.h:138 [inline]
RIP: 0010:arch_test_and_set_bit_lock arch/x86/include/asm/bitops.h:144 [inline]
RIP: 0010:test_and_set_bit_lock include/asm-generic/bitops/instrumented-lock.h:56 [inline]
RIP: 0010:trylock_page include/linux/pagemap.h:615 [inline]
RIP: 0010:next_uptodate_page+0x42d/0x900 mm/filemap.c:3265
Code: d6 ff 40 f6 c5 01 0f 85 0d 03 00 00 e8 9c b3 d6 ff 4c 89 e5 48 89 ef be 08 00 00 00 e8 8c 9d 20 00 31 db f0 48 0f ba 6d 00 00 <40> 0f 93 c5 0f 92 c3 bf 02 00 00 00 89 de e8 d0 b5 d6 ff bf 01 00
RSP: 0018:ffffc90003d675d0 EFLAGS: 00000246
RAX: ffffffff81a9d101 RBX: 0000000000000000 RCX: ffffffff81a9d204
RDX: 0000000000000001 RSI: 0000000000000008 RDI: ffffea0001caef80
RBP: ffffea0001caef80 R08: dffffc0000000000 R09: fffff94000395df1
R10: 0000000000000000 R11: dffffc0000000001 R12: ffffea0001caef80
R13: ffffea0001caef88 R14: 000000000000013f R15: ffffc90003d67720
 first_map_page mm/filemap.c:3288 [inline]
 filemap_map_pages+0x2d0/0x15c0 mm/filemap.c:3314
 do_fault_around mm/memory.c:4241 [inline]
 do_read_fault mm/memory.c:4256 [inline]
 do_fault mm/memory.c:4390 [inline]
 handle_pte_fault mm/memory.c:4648 [inline]
 __handle_mm_fault mm/memory.c:4783 [inline]
 handle_mm_fault+0x341b/0x5960 mm/memory.c:4881
 faultin_page mm/gup.c:976 [inline]
 __get_user_pages+0x4ed/0x11d0 mm/gup.c:1197
 populate_vma_page_range+0x215/0x2a0 mm/gup.c:1529
 __mm_populate+0x2a5/0x4a0 mm/gup.c:1638
 mm_populate include/linux/mm.h:2632 [inline]
 vm_mmap_pgoff+0x22b/0x2d0 mm/util.c:556
 ksys_mmap_pgoff+0x13e/0x780 mm/mmap.c:1623
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x3b/0xb0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f9f123d9169
RSP: 002b:00007f9f10242038 EFLAGS: 00000246 ORIG_RAX: 0000000000000009
RAX: ffffffffffffffda RBX: 00007f9f125f1fa0 RCX: 00007f9f123d9169
RDX: b635773f06ebbeee RSI: 0000000000b36000 RDI: 0000400000000000
RBP: 00007f9f1245a2a0 R08: ffffffffffffffff R09: 0000000000000000
R10: 0000000000008031 R11: 0000000000000246 R12: 0000000000000000
R13: 0000000000000000 R14: 00007f9f125f1fa0 R15: 00007ffd96acb3f8
 </TASK>
rcu: rcu_preempt kthread starved for 10518 jiffies! g25053 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x0 ->cpu=0
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:R  running task     stack:26488 pid:   15 ppid:     2 flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5027 [inline]
 __schedule+0x12c4/0x45b0 kernel/sched/core.c:6373
 schedule+0x11b/0x1f0 kernel/sched/core.c:6456
 schedule_timeout+0x1b9/0x300 kernel/time/timer.c:1914
 rcu_gp_fqs_loop+0x2bf/0x1080 kernel/rcu/tree.c:1972
 rcu_gp_kthread+0xa4/0x360 kernel/rcu/tree.c:2145
 kthread+0x3f6/0x4f0 kernel/kthread.c:334
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:287
 </TASK>
rcu: Stack dump where RCU GP kthread last ran:
NMI backtrace for cpu 0
CPU: 0 PID: 7023 Comm: syz.2.575 Not tainted 5.15.178-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
Call Trace:
 <IRQ>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x1e3/0x2d0 lib/dump_stack.c:106
 nmi_cpu_backtrace+0x46a/0x4a0 lib/nmi_backtrace.c:111
 nmi_trigger_cpumask_backtrace+0x181/0x2a0 lib/nmi_backtrace.c:62
 trigger_single_cpu_backtrace include/linux/nmi.h:166 [inline]
 rcu_check_gp_kthread_starvation+0x1d2/0x240 kernel/rcu/tree_stall.h:487
 print_other_cpu_stall+0x137a/0x14d0 kernel/rcu/tree_stall.h:592
 check_cpu_stall kernel/rcu/tree_stall.h:745 [inline]
 rcu_pending kernel/rcu/tree.c:3932 [inline]
 rcu_sched_clock_irq+0xa38/0x1150 kernel/rcu/tree.c:2619
 update_process_times+0x196/0x200 kernel/time/timer.c:1818
 tick_sched_handle kernel/time/tick-sched.c:254 [inline]
 tick_sched_timer+0x386/0x550 kernel/time/tick-sched.c:1473
 __run_hrtimer kernel/time/hrtimer.c:1688 [inline]
 __hrtimer_run_queues+0x55b/0xcf0 kernel/time/hrtimer.c:1752
 hrtimer_interrupt+0x392/0x980 kernel/time/hrtimer.c:1814
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1097 [inline]
 __sysvec_apic_timer_interrupt+0x13b/0x4b0 arch/x86/kernel/apic/apic.c:1114
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1108 [inline]
 sysvec_apic_timer_interrupt+0x9b/0xc0 arch/x86/kernel/apic/apic.c:1108
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:676
RIP: 0010:__raw_spin_unlock_irq include/linux/spinlock_api_smp.h:169 [inline]
RIP: 0010:_raw_spin_unlock_irq+0x25/0x40 kernel/locking/spinlock.c:202
Code: 31 61 f6 ff 90 53 48 89 fb 48 83 c7 18 48 8b 74 24 08 e8 0e 05 1a f7 48 89 df e8 66 59 1b f7 e8 b1 15 3e f7 fb bf 01 00 00 00 <e8> 66 9e 0e f7 65 8b 05 77 81 b9 75 85 c0 74 02 5b c3 e8 44 9e b7
RSP: 0018:ffffc900031efbc0 EFLAGS: 00000282
RAX: 8b6ab59e7bfacd00 RBX: ffff888077afc0c0 RCX: ffffffff96a92f03
RDX: dffffc0000000000 RSI: ffffffff8aab2b80 RDI: 0000000000000001
RBP: 0000000000000000 R08: ffffffff81870420 R09: ffffed100ef5f819
R10: 0000000000000000 R11: dffffc0000000001 R12: 0000000000000021
R13: dffffc0000000000 R14: ffff888077afc558 R15: ffff888077afc0c0
 spin_unlock_irq include/linux/spinlock.h:413 [inline]
 get_signal+0x13ee/0x14e0 kernel/signal.c:2903
 arch_do_signal_or_restart+0xc3/0x1890 arch/x86/kernel/signal.c:867
 handle_signal_work kernel/entry/common.c:154 [inline]
 exit_to_user_mode_loop+0x97/0x130 kernel/entry/common.c:178
 exit_to_user_mode_prepare+0xb1/0x140 kernel/entry/common.c:214
 __syscall_exit_to_user_mode_work kernel/entry/common.c:296 [inline]
 syscall_exit_to_user_mode+0x5d/0x240 kernel/entry/common.c:307
 do_syscall_64+0x47/0xb0 arch/x86/entry/common.c:86
 entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f7d3f8a5167
Code: ff ff ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 <0f> 05 48 3d 01 f0 ff ff 73 01 c3 48 c7 c1 a8 ff ff ff f7 d8 64 89
RSP: 002b:00007f7d3d70e0e8 EFLAGS: 00000246
RAX: 00000000000000ca RBX: 00007f7d3fabdfa8 RCX: 00007f7d3f8a5169
RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007f7d3fabdfa8
RBP: 00007f7d3fabdfa0 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f7d3fabdfac
R13: 0000000000000000 R14: 00007ffce9df7320 R15: 00007ffce9df7408
 </TASK>

Crashes (7):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/03/10 01:39 linux-5.15.y c16c81c81336 163f510d .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in mmap_pgoff
2025/01/26 07:06 linux-5.15.y 003148680b79 9fbd772e .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in mmap_pgoff
2024/12/19 09:47 linux-5.15.y 963e654022cc 1432fc84 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in mmap_pgoff
2024/11/22 19:30 linux-5.15.y 0a51d2d4527b 4b25d554 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in mmap_pgoff
2024/10/29 23:24 linux-5.15.y 74cdd62cb470 66aeb999 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in mmap_pgoff
2024/08/28 05:11 linux-5.15.y fa93fa65db6e 6c853ff9 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in mmap_pgoff
2024/07/04 06:22 linux-5.15.y 4878aadf2d15 f76a75f3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in mmap_pgoff
* Struck through repros no longer work on HEAD.