syzbot


INFO: rcu detected stall in wg_packet_encrypt_worker

Status: auto-obsoleted due to no activity on 2024/08/24 09:39
Subsystems: wireguard
[Documentation on labels]
First crash: 246d, last: 246d

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	0-...!: (2 ticks this GP) idle=55a4/1/0x4000000000000000 softirq=9313/9313 fqs=0
rcu: 	Tasks blocked on level-0 rcu_node (CPUs 0-1): P5512/1:b..l
rcu: 	(detected by 1, t=10506 jiffies, g=11421, q=693 ncpus=2)
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 5097 Comm: kworker/0:3 Not tainted 6.9.0-syzkaller-12393-g9b62e02e6336 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 04/02/2024
Workqueue: wg-crypt-wg2 wg_packet_encrypt_worker
RIP: 0010:mark_lock+0x6/0xc60 kernel/locking/lockdep.c:4639
Code: 8f e8 1e 40 7e 00 e9 db fe ff ff 66 0f 1f 84 00 00 00 00 00 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 90 55 48 89 e5 41 57 <41> 56 41 89 d6 48 ba 00 00 00 00 00 fc ff df 41 55 41 54 53 48 83
RSP: 0018:ffffc90000007a80 EFLAGS: 00000046
RAX: 0000000000000001 RBX: ffff888077948b7a RCX: 0000000000000002
RDX: 0000000000000000 RSI: ffff888077948b58 RDI: ffff888077948000
RBP: ffffc90000007a88 R08: 0000000000000000 R09: 0000000000000001
R10: ffffffff9426b2cf R11: 0000000000000003 R12: ffffed100ef2915b
R13: ffff888077948ae0 R14: ffff888077948b58 R15: 0000000000000002
FS:  0000000000000000(0000) GS:ffff8880b9200000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b3262f000 CR3: 00000000280f0000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 mark_usage kernel/locking/lockdep.c:4564 [inline]
 __lock_acquire+0x1359/0x3b30 kernel/locking/lockdep.c:5091
 lock_acquire kernel/locking/lockdep.c:5754 [inline]
 lock_acquire+0x1b1/0x560 kernel/locking/lockdep.c:5719
 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline]
 _raw_spin_lock_irqsave+0x3a/0x60 kernel/locking/spinlock.c:162
 debug_object_activate+0x199/0x540 lib/debugobjects.c:708
 debug_hrtimer_activate kernel/time/hrtimer.c:423 [inline]
 debug_activate kernel/time/hrtimer.c:478 [inline]
 enqueue_hrtimer+0x25/0x3c0 kernel/time/hrtimer.c:1085
 __run_hrtimer kernel/time/hrtimer.c:1704 [inline]
 __hrtimer_run_queues+0xaac/0xcc0 kernel/time/hrtimer.c:1751
 hrtimer_interrupt+0x31b/0x800 kernel/time/hrtimer.c:1813
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1032 [inline]
 __sysvec_apic_timer_interrupt+0x10f/0x450 arch/x86/kernel/apic/apic.c:1049
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1043 [inline]
 sysvec_apic_timer_interrupt+0x90/0xb0 arch/x86/kernel/apic/apic.c:1043
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:702
RIP: 0010:memset_orig+0x29/0xb0 arch/x86/lib/memset_64.S:62
Code: 90 66 0f 1f 00 49 89 fa 40 0f b6 ce 48 b8 01 01 01 01 01 01 01 01 48 0f af c1 41 89 f9 41 83 e1 07 75 70 48 89 d1 48 c1 e9 06 <74> 35 0f 1f 44 00 00 48 ff c9 48 89 07 48 89 47 08 48 89 47 10 48
RSP: 0018:ffffc900031bf398 EFLAGS: 00000202
RAX: 0000000000000000 RBX: ffffc900031bf480 RCX: 0000000000000001
RDX: 0000000000000040 RSI: 0000000000000000 RDI: ffffc900031bf4d0
RBP: ffffc900031bf710 R08: 0000000000000005 R09: 0000000000000000
R10: ffffc900031bf4d0 R11: e691b91784c432f6 R12: 0000000000000001
R13: 0000000000000001 R14: 0000000000000000 R15: 0000000000000000
 memzero_explicit include/linux/string.h:358 [inline]
 chacha20poly1305_crypt_sg_inplace+0x7aa/0xb50 lib/crypto/chacha20poly1305.c:327
 chacha20poly1305_encrypt_sg_inplace+0x3e/0x50 lib/crypto/chacha20poly1305.c:338
 encrypt_packet+0x720/0x8e0 drivers/net/wireguard/send.c:216
 wg_packet_encrypt_worker+0x2ec/0xbb0 drivers/net/wireguard/send.c:297
 process_one_work+0x9fb/0x1b60 kernel/workqueue.c:3231
 process_scheduled_works kernel/workqueue.c:3312 [inline]
 worker_thread+0x6c8/0xf70 kernel/workqueue.c:3393
 kthread+0x2c1/0x3a0 kernel/kthread.c:389
 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
 </TASK>
task:syz-executor.3  state:R  running task     stack:27736 pid:5512  tgid:5510  ppid:5106   flags:0x00004006
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5408 [inline]
 __schedule+0xf15/0x5d00 kernel/sched/core.c:6745
 preempt_schedule_common+0x44/0xc0 kernel/sched/core.c:6924
 preempt_schedule_thunk+0x1a/0x30 arch/x86/entry/thunk.S:12
 __raw_spin_unlock include/linux/spinlock_api_smp.h:143 [inline]
 _raw_spin_unlock+0x3e/0x50 kernel/locking/spinlock.c:186
 spin_unlock include/linux/spinlock.h:391 [inline]
 zap_pte_range mm/memory.c:1682 [inline]
 zap_pmd_range mm/memory.c:1730 [inline]
 zap_pud_range mm/memory.c:1759 [inline]
 zap_p4d_range mm/memory.c:1780 [inline]
 unmap_page_range+0xbc7/0x4220 mm/memory.c:1801
 unmap_single_vma+0x194/0x2b0 mm/memory.c:1847
 unmap_vmas+0x22f/0x490 mm/memory.c:1891
 exit_mmap+0x1b8/0xb20 mm/mmap.c:3341
 __mmput+0x12a/0x4d0 kernel/fork.c:1346
 mmput+0x62/0x70 kernel/fork.c:1368
 exit_mm kernel/exit.c:565 [inline]
 do_exit+0x9b7/0x2ba0 kernel/exit.c:861
 do_group_exit+0xd3/0x2a0 kernel/exit.c:1023
 get_signal+0x2616/0x2710 kernel/signal.c:2909
 arch_do_signal_or_restart+0x90/0x7e0 arch/x86/kernel/signal.c:310
 exit_to_user_mode_loop kernel/entry/common.c:111 [inline]
 exit_to_user_mode_prepare include/linux/entry-common.h:328 [inline]
 irqentry_exit_to_user_mode+0x139/0x280 kernel/entry/common.c:231
 asm_exc_page_fault+0x26/0x30 arch/x86/include/asm/idtentry.h:623
RIP: 0033:0x7f0ebe6287f6
RSP: 002b:00007f0ebf462530 EFLAGS: 00010206
RAX: 0000000000c56001 RBX: 00007f0ebf4625d0 RCX: 0000000000000030
RDX: 0000000000000055 RSI: 0000000000000001 RDI: 00007f0ebf462670
RBP: 0000000000000102 R08: 00007f0eb4400000 R09: 0000000000c56000
R10: 0000000000000000 R11: 00007f0ebf4625e0 R12: 0000000000000001
R13: 00007f0ebe6ebfc0 R14: 0000000000000000 R15: 00007f0ebf462670
 </TASK>
rcu: rcu_preempt kthread timer wakeup didn't happen for 10505 jiffies! g11421 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402
rcu: 	Possible timer handling issue on cpu=0 timer-softirq=4770
rcu: rcu_preempt kthread starved for 10506 jiffies! g11421 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 ->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:I stack:27312 pid:17    tgid:17    ppid:2      flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5408 [inline]
 __schedule+0xf15/0x5d00 kernel/sched/core.c:6745
 __schedule_loop kernel/sched/core.c:6822 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6837
 schedule_timeout+0x136/0x2a0 kernel/time/timer.c:2581
 rcu_gp_fqs_loop+0x1eb/0xb00 kernel/rcu/tree.c:2000
 rcu_gp_kthread+0x271/0x380 kernel/rcu/tree.c:2202
 kthread+0x2c1/0x3a0 kernel/kthread.c:389
 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
 </TASK>

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/05/26 09:35 upstream 9b62e02e6336 a10a183e .config console log report info [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root INFO: rcu detected stall in wg_packet_encrypt_worker
* Struck through repros no longer work on HEAD.