syzbot


INFO: rcu detected stall in tun_chr_close (3)

Status: auto-closed as invalid on 2020/10/25 04:38
Subsystems: netfilter
[Documentation on labels]
First crash: 1367d, last: 1367d
Similar bugs (5)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in tun_chr_close (2) netfilter 1 1508d 1508d 0/26 closed as invalid on 2020/05/30 17:14
upstream INFO: rcu detected stall in tun_chr_close (4) bpf net 3 827d 897d 0/26 closed as invalid on 2022/02/08 10:00
upstream INFO: rcu detected stall in tun_chr_close net 13 1962d 2042d 0/26 auto-closed as invalid on 2019/06/08 11:01
linux-5.15 INFO: rcu detected stall in tun_chr_close 1 101d 101d 0/3 auto-obsoleted due to no activity on 2024/04/23 00:30
upstream INFO: rcu detected stall in tun_chr_close (5) net 1 326d 326d 0/26 auto-obsoleted due to no activity on 2023/09/01 17:23

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	0-...!: (0 ticks this GP) idle=d12/1/0x4000000000000000 softirq=70112/70112 fqs=40 
	(detected by 1, t=10502 jiffies, g=135413, q=415)
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 30530 Comm: syz-executor.0 Not tainted 5.8.0-rc7-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:kasan_mem_to_shadow include/linux/kasan.h:28 [inline]
RIP: 0010:memory_is_poisoned_n mm/kasan/generic.c:134 [inline]
RIP: 0010:memory_is_poisoned mm/kasan/generic.c:165 [inline]
RIP: 0010:check_memory_region_inline mm/kasan/generic.c:183 [inline]
RIP: 0010:check_memory_region+0x44/0x180 mm/kasan/generic.c:192
Code: 01 00 00 48 b8 ff ff ff ff ff 7f ff ff 48 39 c7 0f 86 05 01 00 00 49 83 e9 01 48 89 fd 48 b8 00 00 00 00 00 fc ff df 4d 89 ca <48> c1 ed 03 49 c1 ea 03 48 01 c5 49 01 c2 48 89 e8 49 8d 5a 01 48
RSP: 0018:ffffc90000007b00 EFLAGS: 00000082
RAX: dffffc0000000000 RBX: 0000000000000001 RCX: ffffffff8159a47f
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffff8c59ab60
RBP: ffffffff8c59ab60 R08: 0000000000000000 R09: ffffffff8c59ab67
R10: ffffffff8c59ab67 R11: 0000000000000001 R12: ffff888052f48500
R13: 0000000000000002 R14: ffff88808b30fb00 R15: 0000000000000a3c
FS:  00000000014a5940(0000) GS:ffff8880ae600000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00000000004ec210 CR3: 0000000090823000 CR4: 00000000001426f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 instrument_atomic_read include/linux/instrumented.h:56 [inline]
 test_bit include/asm-generic/bitops/instrumented-non-atomic.h:110 [inline]
 hlock_class kernel/locking/lockdep.c:179 [inline]
 check_wait_context kernel/locking/lockdep.c:4055 [inline]
 __lock_acquire+0x49f/0x56e0 kernel/locking/lockdep.c:4330
 lock_acquire+0x1f1/0xad0 kernel/locking/lockdep.c:4959
 __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline]
 _raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:151
 spin_lock include/linux/spinlock.h:353 [inline]
 advance_sched+0x4f/0x990 net/sched/sch_taprio.c:699
 __run_hrtimer kernel/time/hrtimer.c:1520 [inline]
 __hrtimer_run_queues+0x6a9/0xfc0 kernel/time/hrtimer.c:1584
 hrtimer_interrupt+0x32a/0x930 kernel/time/hrtimer.c:1646
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1080 [inline]
 __sysvec_apic_timer_interrupt+0x142/0x5e0 arch/x86/kernel/apic/apic.c:1097
 asm_call_on_stack+0xf/0x20 arch/x86/entry/entry_64.S:711
 </IRQ>
 __run_on_irqstack arch/x86/include/asm/irq_stack.h:22 [inline]
 run_on_irqstack_cond arch/x86/include/asm/irq_stack.h:48 [inline]
 sysvec_apic_timer_interrupt+0xe0/0x120 arch/x86/kernel/apic/apic.c:1091
 asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:585
RIP: 0010:arch_local_irq_restore arch/x86/include/asm/paravirt.h:770 [inline]
RIP: 0010:lock_release+0x481/0x8d0 kernel/locking/lockdep.c:4980
Code: 00 00 00 00 00 fc ff df 48 c1 e8 03 80 3c 10 00 0f 85 7f 03 00 00 48 83 3d 03 d8 5a 08 00 0f 84 a9 01 00 00 48 8b 3c 24 57 9d <0f> 1f 44 00 00 48 b8 00 00 00 00 00 fc ff df 48 01 c5 48 c7 45 00
RSP: 0018:ffffc900021b78c8 EFLAGS: 00000282
RAX: 1ffffffff1369c11 RBX: ffff888052f48500 RCX: 0000000000000000
RDX: dffffc0000000000 RSI: ffffffff89a68318 RDI: 0000000000000282
RBP: 1ffff92000436f1b R08: 0000000000000001 R09: ffff888052f48dc8
R10: fffffbfff155da49 R11: 0000000000000000 R12: 0000000000000001
R13: ffffffff86709868 R14: 0000000000000002 R15: ffff888052f48500
 __raw_spin_unlock include/linux/spinlock_api_smp.h:150 [inline]
 _raw_spin_unlock+0x12/0x40 kernel/locking/spinlock.c:183
 spin_unlock include/linux/spinlock.h:393 [inline]
 get_next_corpse net/netfilter/nf_conntrack_core.c:2237 [inline]
 nf_ct_iterate_cleanup+0x88/0x330 net/netfilter/nf_conntrack_core.c:2261
 nf_ct_iterate_cleanup_net net/netfilter/nf_conntrack_core.c:2346 [inline]
 nf_ct_iterate_cleanup_net+0x113/0x170 net/netfilter/nf_conntrack_core.c:2331
 masq_device_event+0xae/0xe0 net/netfilter/nf_nat_masquerade.c:88
 notifier_call_chain+0xb5/0x200 kernel/notifier.c:83
 call_netdevice_notifiers_info+0xb5/0x130 net/core/dev.c:2027
 call_netdevice_notifiers_extack net/core/dev.c:2039 [inline]
 call_netdevice_notifiers net/core/dev.c:2053 [inline]
 dev_close_many+0x30b/0x650 net/core/dev.c:1628
 rollback_registered_many+0x3af/0xf60 net/core/dev.c:8945
 rollback_registered net/core/dev.c:9013 [inline]
 unregister_netdevice_queue+0x2dd/0x570 net/core/dev.c:10094
 unregister_netdevice include/linux/netdevice.h:2754 [inline]
 __tun_detach+0xff6/0x1310 drivers/net/tun.c:691
 tun_detach drivers/net/tun.c:708 [inline]
 tun_chr_close+0xd9/0x180 drivers/net/tun.c:3423
 __fput+0x33c/0x880 fs/file_table.c:281
 task_work_run+0xdd/0x190 kernel/task_work.c:135
 tracehook_notify_resume include/linux/tracehook.h:188 [inline]
 exit_to_usermode_loop arch/x86/entry/common.c:239 [inline]
 __prepare_exit_to_usermode+0x1e9/0x1f0 arch/x86/entry/common.c:269
 do_syscall_64+0x6c/0xe0 arch/x86/entry/common.c:393
 entry_SYSCALL_64_after_hwframe+0x44/0xa9
RIP: 0033:0x415ee1
Code: 75 14 b8 03 00 00 00 0f 05 48 3d 01 f0 ff ff 0f 83 04 1b 00 00 c3 48 83 ec 08 e8 0a fc ff ff 48 89 04 24 b8 03 00 00 00 0f 05 <48> 8b 3c 24 48 89 c2 e8 53 fc ff ff 48 89 d0 48 83 c4 08 48 3d 01
RSP: 002b:00007ffc639b3c20 EFLAGS: 00000293 ORIG_RAX: 0000000000000003
RAX: 0000000000000000 RBX: 0000000000000008 RCX: 0000000000415ee1
RDX: 0000000000000000 RSI: 00000000ffffffff RDI: 0000000000000007
RBP: 0000000000000001 R08: 0000000081796b9d R09: 0000000000000000
R10: 00007ffc639b3d10 R11: 0000000000000293 R12: 000000000078c900
R13: 000000000078c900 R14: ffffffffffffffff R15: 000000000078bfac
rcu: rcu_preempt kthread starved for 10422 jiffies! g135413 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:
rcu_preempt     R  running task    29112    10      2 0x00004000
Call Trace:
 context_switch kernel/sched/core.c:3458 [inline]
 __schedule+0x8ea/0x2210 kernel/sched/core.c:4219
 schedule+0xd0/0x2a0 kernel/sched/core.c:4294
 schedule_timeout+0x148/0x250 kernel/time/timer.c:1908
 rcu_gp_fqs_loop kernel/rcu/tree.c:1874 [inline]
 rcu_gp_kthread+0xae5/0x1b50 kernel/rcu/tree.c:2044
 kthread+0x3b5/0x4a0 kernel/kthread.c:291
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:293

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2020/07/27 04:35 upstream 92ed30191993 51265195 .config console log report ci-upstream-kasan-gce-root
* Struck through repros no longer work on HEAD.