syzbot


INFO: rcu detected stall in filemap_fault (2)

Status: upstream: reported on 2025/02/27 13:48
Reported-by: syzbot+36b496a0a96ab7d07287@syzkaller.appspotmail.com
First crash: 115d, last: 11d
Similar bugs (4)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in filemap_fault mm 1 2450d 2448d 0/29 closed as dup on 2019/01/02 16:20
upstream INFO: rcu detected stall in filemap_fault (2) mm fs 7 1321d 1342d 0/29 auto-closed as invalid on 2022/02/07 21:39
linux-6.1 INFO: rcu detected stall in filemap_fault 2 281d 290d 0/3 auto-obsoleted due to no activity on 2024/12/24 06:37
linux-5.15 INFO: rcu detected stall in filemap_fault 2 302d 305d 0/3 auto-obsoleted due to no activity on 2024/12/02 14:29

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	Tasks blocked on level-0 rcu_node (CPUs 0-1): P5206/1:b..l
	(detected by 0, t=10503 jiffies, g=12977, q=212)
task:syz.0.203       state:R  running task     stack:24864 pid: 5206 ppid:  4183 flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5030 [inline]
 __schedule+0x11b8/0x43b0 kernel/sched/core.c:6376
 preempt_schedule_irq+0xb1/0x150 kernel/sched/core.c:6780
 irqentry_exit+0x63/0x70 kernel/entry/common.c:432
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:676
RIP: 0010:lock_is_held_type+0x13a/0x190 kernel/locking/lockdep.c:5671
Code: 75 40 48 c7 04 24 00 00 00 00 9c 8f 04 24 f7 04 24 00 02 00 00 75 46 41 f7 c5 00 02 00 00 74 01 fb 65 48 8b 04 25 28 00 00 00 <48> 3b 44 24 08 75 3c 89 e8 48 83 c4 10 5b 41 5c 41 5d 41 5e 41 5f
RSP: 0018:ffffc9000312f368 EFLAGS: 00000206
RAX: 85984787e8336700 RBX: ffff888020e55940 RCX: 85984787e8336700
RDX: 0000000000000002 RSI: ffffffff8a0b2460 RDI: ffffffff8a59a740
RBP: 0000000000000000 R08: dffffc0000000000 R09: fffffbfff1ff3619
R10: fffffbfff1ff3619 R11: 1ffffffff1ff3618 R12: 0000000000000002
R13: 0000000000000246 R14: ffff88806126acc8 R15: ffff888020e56480
 lock_is_held include/linux/lockdep.h:287 [inline]
 xa_head include/linux/xarray.h:1166 [inline]
 xas_start+0x1e5/0x770 lib/xarray.c:188
 xas_load lib/xarray.c:233 [inline]
 xa_get_order+0xec/0x390 lib/xarray.c:1765
 __add_to_page_cache_locked+0x540/0xf60 mm/filemap.c:901
 add_to_page_cache_lru+0x150/0x4a0 mm/filemap.c:984
 page_cache_ra_unbounded+0x410/0x930 mm/readahead.c:222
 page_cache_async_readahead include/linux/pagemap.h:856 [inline]
 do_async_mmap_readahead mm/filemap.c:3023 [inline]
 filemap_fault+0x5ff/0x13b0 mm/filemap.c:3079
 __do_fault+0x141/0x330 mm/memory.c:3928
 do_read_fault mm/memory.c:4264 [inline]
 do_fault mm/memory.c:4392 [inline]
 handle_pte_fault mm/memory.c:4650 [inline]
 __handle_mm_fault mm/memory.c:4785 [inline]
 handle_mm_fault+0x2949/0x43c0 mm/memory.c:4883
 faultin_page mm/gup.c:976 [inline]
 __get_user_pages+0x93e/0x11c0 mm/gup.c:1197
 populate_vma_page_range+0x213/0x290 mm/gup.c:1529
 __mm_populate+0x26f/0x3a0 mm/gup.c:1638
 mm_populate include/linux/mm.h:2632 [inline]
 vm_mmap_pgoff+0x203/0x2b0 mm/util.c:556
 ksys_mmap_pgoff+0x542/0x780 mm/mmap.c:1623
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f9befea4929
RSP: 002b:00007f9bedd0c038 EFLAGS: 00000246 ORIG_RAX: 0000000000000009
RAX: ffffffffffffffda RBX: 00007f9bf00cbfa0 RCX: 00007f9befea4929
RDX: 00000000007ffff7 RSI: 0000000000600000 RDI: 0000200000000000
RBP: 00007f9beff26b39 R08: 0000000000000004 R09: 0000000000001000
R10: 0000000004012011 R11: 0000000000000246 R12: 0000000000000000
R13: 0000000000000000 R14: 00007f9bf00cbfa0 R15: 00007fffa3545958
 </TASK>
rcu: rcu_preempt kthread starved for 10532 jiffies! g12977 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:27680 pid:   15 ppid:     2 flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5030 [inline]
 __schedule+0x11b8/0x43b0 kernel/sched/core.c:6376
 schedule+0x11b/0x1e0 kernel/sched/core.c:6459
 schedule_timeout+0x15c/0x280 kernel/time/timer.c:1914
 rcu_gp_fqs_loop+0x29e/0x11b0 kernel/rcu/tree.c:1972
 rcu_gp_kthread+0x98/0x350 kernel/rcu/tree.c:2145
 kthread+0x436/0x520 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: 5235 Comm: syz.6.205 Not tainted 5.15.185-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 05/07/2025
Call Trace:
 <IRQ>
 dump_stack_lvl+0x168/0x230 lib/dump_stack.c:106
 nmi_cpu_backtrace+0x397/0x3d0 lib/nmi_backtrace.c:111
 nmi_trigger_cpumask_backtrace+0x163/0x280 lib/nmi_backtrace.c:62
 trigger_single_cpu_backtrace include/linux/nmi.h:166 [inline]
 rcu_check_gp_kthread_starvation+0x1cd/0x250 kernel/rcu/tree_stall.h:487
 print_other_cpu_stall+0x10c8/0x1220 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+0x831/0x1110 kernel/rcu/tree.c:2619
 update_process_times+0x193/0x200 kernel/time/timer.c:1818
 tick_sched_handle kernel/time/tick-sched.c:254 [inline]
 tick_sched_timer+0x37d/0x560 kernel/time/tick-sched.c:1473
 __run_hrtimer kernel/time/hrtimer.c:1690 [inline]
 __hrtimer_run_queues+0x4fe/0xc40 kernel/time/hrtimer.c:1754
 hrtimer_interrupt+0x3bb/0x8d0 kernel/time/hrtimer.c:1816
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1097 [inline]
 __sysvec_apic_timer_interrupt+0x137/0x4a0 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:arch_static_branch arch/x86/include/asm/jump_label.h:27 [inline]
RIP: 0010:static_key_false include/linux/jump_label.h:212 [inline]
RIP: 0010:native_write_msr arch/x86/include/asm/msr.h:156 [inline]
RIP: 0010:wrmsr arch/x86/include/asm/msr.h:263 [inline]
RIP: 0010:native_apic_msr_write+0x35/0x50 arch/x86/include/asm/apic.h:208
Code: 74 2a 83 ff 30 74 25 eb 10 81 ff d0 00 00 00 74 1b 81 ff e0 00 00 00 74 13 c1 ef 04 81 c7 00 08 00 00 89 f9 89 f0 31 d2 0f 30 <66> 90 c3 89 f6 31 d2 e9 9f 6c c8 02 66 2e 0f 1f 84 00 00 00 00 00
RSP: 0018:ffffc900023a7cb0 EFLAGS: 00000246
RAX: 00000000000000f6 RBX: ffffffff8bbafa10 RCX: 000000000000083f
RDX: 0000000000000000 RSI: 00000000000000f6 RDI: 000000000000083f
RBP: 0000000000000000 R08: dffffc0000000000 R09: ffffed10172067a7
R10: ffffed10172067a7 R11: 1ffff110172067a6 R12: ffff8880b9033b01
R13: dffffc0000000000 R14: dffffc0000000000 R15: 0000000000000020
 arch_irq_work_raise+0x82/0xd0 arch/x86/kernel/irq_work.c:31
 irq_work_queue+0x95/0x140 kernel/irq_work.c:75
 bpf_send_signal_common+0x2b2/0x420 kernel/trace/bpf_trace.c:820
 ____bpf_send_signal kernel/trace/bpf_trace.c:829 [inline]
 bpf_send_signal+0x15/0x20 kernel/trace/bpf_trace.c:827
 bpf_prog_7ba5217f62dcd359+0x38/0xa48
 bpf_dispatcher_nop_func include/linux/bpf.h:790 [inline]
 __bpf_prog_run include/linux/filter.h:628 [inline]
 bpf_prog_run include/linux/filter.h:635 [inline]
 __bpf_trace_run kernel/trace/bpf_trace.c:1878 [inline]
 bpf_trace_run2+0x15b/0x2d0 kernel/trace/bpf_trace.c:1915
 __bpf_trace_sys_enter+0x60/0x70 include/trace/events/syscalls.h:18
 trace_sys_enter+0x65/0x80 include/trace/events/syscalls.h:18
 syscall_trace_enter+0x115/0x180 kernel/entry/common.c:77
 do_syscall_64+0x24/0xa0 arch/x86/entry/common.c:76
 entry_SYSCALL_64_after_hwframe+0x66/0xd0
RIP: 0033:0x7f82db360929
Code: 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 01 48
RSP: 002b:00007f82d91a70e8 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca
RAX: ffffffffffffffda RBX: 00007f82db588088 RCX: 00007f82db360929
RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007f82db588088
RBP: 00007f82db588080 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f82db58808c
R13: 0000000000000000 R14: 00007ffde3fa72d0 R15: 00007ffde3fa73b8
 </TASK>

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/06/11 16:02 linux-5.15.y 1c700860e8bc 5d7e17ca .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in filemap_fault
2025/05/05 20:26 linux-5.15.y 16fdf2c7111b 6ca47dd8 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in filemap_fault
2025/03/28 18:41 linux-5.15.y 0c935c049b5c 9a1a9e31 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in filemap_fault
2025/02/27 13:47 linux-5.15.y c16c81c81336 6a8fcbc4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-5-15-kasan INFO: rcu detected stall in filemap_fault
* Struck through repros no longer work on HEAD.