syzbot


INFO: rcu detected stall in mmap_pgoff (2)

Status: auto-closed as invalid on 2022/05/26 19:52
Subsystems: kernel
[Documentation on labels]
First crash: 801d, last: 801d
Similar bugs (6)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in mmap_pgoff (5) mm fs 2 284d 314d 0/26 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 1111d 1180d 0/1 upstream: reported syz repro on 2021/02/11 18:33
linux-5.15 INFO: rcu detected stall in mmap_pgoff 1 210d 210d 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 412d 412d 0/26 auto-obsoleted due to no activity on 2023/05/21 07:37
upstream INFO: rcu detected stall in mmap_pgoff crypto 3 905d 913d 0/26 closed as invalid on 2022/02/08 10:00
upstream INFO: rcu detected stall in mmap_pgoff (3) mm 1 602d 602d 0/26 auto-obsoleted due to no activity on 2022/12/11 19:43

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	0-...!: (1 GPs behind) idle=175/1/0x4000000000000000 softirq=25343/25344 fqs=1 
	(detected by 1, t=10502 jiffies, g=34885, q=380)
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 8295 Comm: syz-executor.1 Not tainted 5.17.0-rc5-syzkaller-00189-g53ab78cd6d5a #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:__kasan_check_read+0x0/0x10 mm/kasan/shadow.c:31
Code: 8b e8 b6 41 4a 07 48 85 db 0f 85 86 a7 4b 07 48 83 c4 60 5b 5d 41 5c 41 5d c3 c3 e9 86 a8 4b 07 cc cc cc cc cc cc cc cc cc cc <48> 8b 0c 24 89 f6 31 d2 e9 f3 f9 ff ff 0f 1f 00 48 8b 0c 24 89 f6
RSP: 0018:ffffc90000007b60 EFLAGS: 00000013
RAX: 0000000000000031 RBX: ffff8880764b4460 RCX: 1ffff1100ec96895
RDX: 1ffffffff200b153 RSI: 0000000000000008 RDI: ffffffff8ffc3ac8
RBP: 0000000000000c66 R08: 0000000000000000 R09: ffffffff8ffc3acf
R10: fffffbfff1ff8759 R11: 0000000000000001 R12: ffff8880764b4488
R13: ffff8880764b3a00 R14: 0000000000000002 R15: 0000000000044000
FS:  00007f13e9f3a700(0000) GS:ffff8880b9c00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00005555564de848 CR3: 000000001d464000 CR4: 0000000000350ef0
Call Trace:
 <IRQ>
 instrument_atomic_read include/linux/instrumented.h:71 [inline]
 test_bit include/asm-generic/bitops/instrumented-non-atomic.h:134 [inline]
 hlock_class kernel/locking/lockdep.c:199 [inline]
 check_wait_context kernel/locking/lockdep.c:4701 [inline]
 __lock_acquire+0x481/0x56c0 kernel/locking/lockdep.c:4977
 lock_acquire kernel/locking/lockdep.c:5639 [inline]
 lock_acquire+0x1ab/0x510 kernel/locking/lockdep.c:5604
 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline]
 _raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:154
 spin_lock include/linux/spinlock.h:349 [inline]
 advance_sched+0x53/0x9a0 net/sched/sch_taprio.c:714
 __run_hrtimer kernel/time/hrtimer.c:1685 [inline]
 __hrtimer_run_queues+0x609/0xe50 kernel/time/hrtimer.c:1749
 hrtimer_interrupt+0x31c/0x790 kernel/time/hrtimer.c:1811
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1086 [inline]
 __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1103
 sysvec_apic_timer_interrupt+0x8e/0xc0 arch/x86/kernel/apic/apic.c:1097
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638
RIP: 0010:__sanitizer_cov_trace_pc+0x43/0x60 kernel/kcov.c:206
Code: 70 02 00 a9 00 01 ff 00 74 0e 85 c9 74 35 8b 82 a4 15 00 00 85 c0 74 2b 8b 82 80 15 00 00 83 f8 02 75 20 48 8b 8a 88 15 00 00 <8b> 92 84 15 00 00 48 8b 01 48 83 c0 01 48 39 c2 76 07 48 89 34 c1
RSP: 0018:ffffc900046bfae0 EFLAGS: 00000246
RAX: 0000000000000002 RBX: 1ffff920008d7f5d RCX: ffffc90003f5a000
RDX: ffff8880764b3a00 RSI: ffffffff8136859c RDI: 0000000073bff067
RBP: dffffc0000000000 R08: 0000000000000000 R09: ffff8880764b3a07
R10: ffffffff81ad1a49 R11: 0000000000000000 R12: 0000000073bff007
R13: 0000000020053000 R14: 0000000000001052 R15: ffff88801dac6000
 pud_huge+0x5c/0xd0 arch/x86/mm/hugetlbpage.c:73
 follow_pud_mask mm/gup.c:757 [inline]
 follow_p4d_mask mm/gup.c:807 [inline]
 follow_page_mask+0x2b1/0x1530 mm/gup.c:866
 __get_user_pages+0x41a/0xf60 mm/gup.c:1188
 populate_vma_page_range+0x24d/0x330 mm/gup.c:1522
 __mm_populate+0x1ea/0x3e0 mm/gup.c:1631
 mm_populate include/linux/mm.h:2702 [inline]
 vm_mmap_pgoff+0x20e/0x290 mm/util.c:524
 ksys_mmap_pgoff+0x40d/0x5a0 mm/mmap.c:1630
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x44/0xae
RIP: 0033:0x7f13eb5e6049
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 b8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f13e9f3a168 EFLAGS: 00000246 ORIG_RAX: 0000000000000009
RAX: ffffffffffffffda RBX: 00007f13eb6f9030 RCX: 00007f13eb5e6049
RDX: 0000000000000002 RSI: 0000000000b36000 RDI: 0000000020000000
RBP: 00007f13eb64008d R08: 0000000000000003 R09: 0000000000000000
R10: 0000000000028011 R11: 0000000000000246 R12: 0000000000000000
R13: 00007ffe5b86597f R14: 00007f13e9f3a300 R15: 0000000000022000
 </TASK>
rcu: rcu_preempt kthread starved for 10500 jiffies! g34885 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x0 ->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:R  running task     stack:28664 pid:   14 ppid:     2 flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:4995 [inline]
 __schedule+0xa94/0x4910 kernel/sched/core.c:6304
 schedule+0xd2/0x260 kernel/sched/core.c:6377
 schedule_timeout+0x14a/0x2a0 kernel/time/timer.c:1881
 rcu_gp_fqs_loop+0x186/0x810 kernel/rcu/tree.c:1963
 rcu_gp_kthread+0x1de/0x320 kernel/rcu/tree.c:2136
 kthread+0x2e9/0x3a0 kernel/kthread.c:377
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
 </TASK>
rcu: Stack dump where RCU GP kthread last ran:
NMI backtrace for cpu 1
CPU: 1 PID: 10 Comm: kworker/u4:1 Not tainted 5.17.0-rc5-syzkaller-00189-g53ab78cd6d5a #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Workqueue: events_unbound toggle_allocation_gate
Call Trace:
 <IRQ>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
 nmi_cpu_backtrace.cold+0x47/0x144 lib/nmi_backtrace.c:111
 nmi_trigger_cpumask_backtrace+0x1e6/0x230 lib/nmi_backtrace.c:62
 trigger_single_cpu_backtrace include/linux/nmi.h:164 [inline]
 rcu_check_gp_kthread_starvation.cold+0x1fb/0x200 kernel/rcu/tree_stall.h:458
 print_other_cpu_stall kernel/rcu/tree_stall.h:563 [inline]
 check_cpu_stall kernel/rcu/tree_stall.h:706 [inline]
 rcu_pending kernel/rcu/tree.c:3919 [inline]
 rcu_sched_clock_irq+0x2068/0x2110 kernel/rcu/tree.c:2617
 update_process_times+0x16d/0x200 kernel/time/timer.c:1785
 tick_sched_handle+0x9b/0x180 kernel/time/tick-sched.c:226
 tick_sched_timer+0x1b0/0x2d0 kernel/time/tick-sched.c:1428
 __run_hrtimer kernel/time/hrtimer.c:1685 [inline]
 __hrtimer_run_queues+0x1c0/0xe50 kernel/time/hrtimer.c:1749
 hrtimer_interrupt+0x31c/0x790 kernel/time/hrtimer.c:1811
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1086 [inline]
 __sysvec_apic_timer_interrupt+0x146/0x530 arch/x86/kernel/apic/apic.c:1103
 sysvec_apic_timer_interrupt+0x8e/0xc0 arch/x86/kernel/apic/apic.c:1097
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:638
RIP: 0010:csd_lock_wait kernel/smp.c:440 [inline]
RIP: 0010:smp_call_function_many_cond+0x4e6/0xc90 kernel/smp.c:969
Code: 0b 00 85 ed 74 4d 48 b8 00 00 00 00 00 fc ff df 4d 89 f4 4c 89 f5 49 c1 ec 03 83 e5 07 49 01 c4 83 c5 03 e8 ac 89 0b 00 f3 90 <41> 0f b6 04 24 40 38 c5 7c 08 84 c0 0f 85 e9 05 00 00 8b 43 08 31
RSP: 0018:ffffc90000cf79f0 EFLAGS: 00000293
RAX: 0000000000000000 RBX: ffff8880b9c41fa0 RCX: 0000000000000000
RDX: ffff888011911d00 RSI: ffffffff816d6214 RDI: 0000000000000003
RBP: 0000000000000003 R08: 0000000000000000 R09: 0000000000000001
R10: ffffffff816d623a R11: 0000000000000000 R12: ffffed10173883f5
R13: 0000000000000000 R14: ffff8880b9c41fa8 R15: 0000000000000001
 on_each_cpu_cond_mask+0x56/0xa0 kernel/smp.c:1135
 on_each_cpu include/linux/smp.h:71 [inline]
 text_poke_sync arch/x86/kernel/alternative.c:1112 [inline]
 text_poke_bp_batch+0x21d/0x6f0 arch/x86/kernel/alternative.c:1300
 text_poke_flush arch/x86/kernel/alternative.c:1470 [inline]
 text_poke_flush arch/x86/kernel/alternative.c:1467 [inline]
 text_poke_finish+0x16/0x30 arch/x86/kernel/alternative.c:1477
 arch_jump_label_transform_apply+0x13/0x20 arch/x86/kernel/jump_label.c:146
 jump_label_update+0x32f/0x410 kernel/jump_label.c:830
 static_key_enable_cpuslocked+0x1b1/0x260 kernel/jump_label.c:177
 static_key_enable+0x16/0x20 kernel/jump_label.c:190
 toggle_allocation_gate mm/kfence/core.c:735 [inline]
 toggle_allocation_gate+0x100/0x390 mm/kfence/core.c:727
 process_one_work+0x9ac/0x1650 kernel/workqueue.c:2307
 worker_thread+0x657/0x1110 kernel/workqueue.c:2454
 kthread+0x2e9/0x3a0 kernel/kthread.c:377
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
 </TASK>
----------------
Code disassembly (best guess):
   0:	8b e8                	mov    %eax,%ebp
   2:	b6 41                	mov    $0x41,%dh
   4:	4a 07                	rex.WX (bad)
   6:	48 85 db             	test   %rbx,%rbx
   9:	0f 85 86 a7 4b 07    	jne    0x74ba795
   f:	48 83 c4 60          	add    $0x60,%rsp
  13:	5b                   	pop    %rbx
  14:	5d                   	pop    %rbp
  15:	41 5c                	pop    %r12
  17:	41 5d                	pop    %r13
  19:	c3                   	retq
  1a:	c3                   	retq
  1b:	e9 86 a8 4b 07       	jmpq   0x74ba8a6
  20:	cc                   	int3
  21:	cc                   	int3
  22:	cc                   	int3
  23:	cc                   	int3
  24:	cc                   	int3
  25:	cc                   	int3
  26:	cc                   	int3
  27:	cc                   	int3
  28:	cc                   	int3
  29:	cc                   	int3
* 2a:	48 8b 0c 24          	mov    (%rsp),%rcx <-- trapping instruction
  2e:	89 f6                	mov    %esi,%esi
  30:	31 d2                	xor    %edx,%edx
  32:	e9 f3 f9 ff ff       	jmpq   0xfffffa2a
  37:	0f 1f 00             	nopl   (%rax)
  3a:	48 8b 0c 24          	mov    (%rsp),%rcx
  3e:	89 f6                	mov    %esi,%esi

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2022/02/25 19:50 upstream 53ab78cd6d5a 45a13a73 .config console log report info ci-upstream-kasan-gce-root INFO: rcu detected stall in mmap_pgoff
* Struck through repros no longer work on HEAD.