syzbot


INFO: rcu detected stall in addrconf_dad_work

Status: upstream: reported C repro on 2024/11/22 07:19
Bug presence: origin:upstream
[Documentation on labels]
Reported-by: syzbot+fd6143dd441e0102ac4b@syzkaller.appspotmail.com
First crash: 29d, last: 29d
Bug presence (1)
Date Name Commit Repro Result
2024/11/23 upstream (ToT) 42d9e8b7ccdd C [report] INFO: rcu detected stall in tc_modify_qdisc
Similar bugs (12)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in addrconf_dad_work (5) net C done inconclusive 13 49d 1566d 0/28 upstream: reported C repro on 2020/09/07 15:59
upstream INFO: rcu detected stall in addrconf_dad_work (4) cgroups mm 8 1809d 1809d 0/28 closed as invalid on 2020/01/09 08:13
upstream INFO: rcu detected stall in addrconf_dad_work (3) kernel 6 1809d 1809d 0/28 closed as invalid on 2020/01/08 05:23
linux-4.14 INFO: rcu detected stall in addrconf_dad_work C done 18 1926d 1933d 1/1 fixed on 2019/12/06 10:33
upstream INFO: rcu detected stall in addrconf_dad_work (2) kernel 15 1844d 1846d 0/28 closed as invalid on 2019/12/04 14:14
upstream INFO: rcu detected stall in addrconf_dad_work C done 126 1924d 1929d 13/28 fixed on 2019/10/09 10:54
linux-4.19 INFO: rcu detected stall in addrconf_dad_work (2) C done 1 1829d 1828d 1/1 fixed on 2020/01/19 15:05
linux-5.15 INFO: rcu detected stall in addrconf_dad_work origin:lts-only syz done 1 41d 112d 0/3 upstream: reported syz repro on 2024/09/01 00:22
linux-4.19 INFO: rcu detected stall in addrconf_dad_work C done 19 1920d 1932d 1/1 fixed on 2019/12/07 19:18
linux-5.15 BUG: soft lockup in addrconf_dad_work 1 523d 523d 0/3 auto-obsoleted due to no activity on 2023/10/25 16:01
linux-4.19 BUG: soft lockup in addrconf_dad_work C error 55 701d 1042d 0/1 upstream: reported C repro on 2022/02/13 10:05
android-5-15 BUG: soft lockup in addrconf_dad_work 3 183d 238d 0/2 auto-obsoleted due to no activity on 2024/09/19 17:30

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	1-...!: (1 ticks this GP) idle=9f94/1/0x4000000000000000 softirq=8117/8117 fqs=0
	(detected by 0, t=10502 jiffies, g=7461, q=22 ncpus=2)
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 4252 Comm: kworker/1:4 Not tainted 6.1.118-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/30/2024
Workqueue: ipv6_addrconf addrconf_dad_work
RIP: 0010:__lock_is_held kernel/locking/lockdep.c:5401 [inline]
RIP: 0010:lock_is_held_type+0x93/0x180 kernel/locking/lockdep.c:5705
Code: fa 48 c7 c7 a0 0e 0c 8b e8 9a 16 00 00 65 ff 05 93 02 5b 75 41 83 bd d8 0a 00 00 00 7e 47 4c 89 ed 48 81 c5 e0 0a 00 00 31 db <48> 83 fb 31 73 24 48 89 ef 4c 89 fe e8 1c 02 00 00 85 c0 75 2a 48
RSP: 0018:ffffc900001e0c78 EFLAGS: 00000093
RAX: 0000000000000008 RBX: 0000000000000006 RCX: ffff88801fa40000
RDX: ffff88801fa40000 RSI: ffff888079448300 RDI: ffff88801fa40ba8
RBP: ffff88801fa40bd0 R08: ffffffff88d03e57 R09: 0000000000000003
R10: ffffffffffffffff R11: dffffc0000000001 R12: 0000000000000046
R13: ffff88801fa40000 R14: 00000000ffffffff R15: ffff888079448300
FS:  0000000000000000(0000) GS:ffff8880b8f00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fa1e9fd50f0 CR3: 000000007638f000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 lock_is_held include/linux/lockdep.h:283 [inline]
 advance_sched+0x69/0x970 net/sched/sch_taprio.c:701
 __run_hrtimer kernel/time/hrtimer.c:1689 [inline]
 __hrtimer_run_queues+0x5e5/0xe50 kernel/time/hrtimer.c:1753
 hrtimer_interrupt+0x392/0x980 kernel/time/hrtimer.c:1815
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1107 [inline]
 __sysvec_apic_timer_interrupt+0x158/0x5b0 arch/x86/kernel/apic/apic.c:1124
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1118 [inline]
 sysvec_apic_timer_interrupt+0x9b/0xc0 arch/x86/kernel/apic/apic.c:1118
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:691
RIP: 0010:__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:152 [inline]
RIP: 0010:_raw_spin_unlock_irqrestore+0xd4/0x130 kernel/locking/spinlock.c:194
Code: 9c 8f 44 24 20 42 80 3c 23 00 74 08 4c 89 f7 e8 02 38 30 f7 f6 44 24 21 02 75 4e 41 f7 c7 00 02 00 00 74 01 fb bf 01 00 00 00 <e8> 17 a8 ac f6 65 8b 05 d8 97 50 75 85 c0 74 3f 48 c7 04 24 0e 36
RSP: 0018:ffffc90003c2ef40 EFLAGS: 00000206
RAX: f15c874d3c565300 RBX: 1ffff92000785dec RCX: ffffffff816b024a
RDX: dffffc0000000000 RSI: ffffffff8b0c01c0 RDI: 0000000000000001
RBP: ffffc90003c2efe0 R08: dffffc0000000000 R09: fffffbfff2246268
R10: 0000000000000000 R11: dffffc0000000001 R12: dffffc0000000000
R13: 1ffff92000785de8 R14: ffffc90003c2ef60 R15: 0000000000000246
 __debug_check_no_obj_freed lib/debugobjects.c:988 [inline]
 debug_check_no_obj_freed+0x455/0x4e0 lib/debugobjects.c:1009
 slab_free_hook mm/slub.c:1699 [inline]
 slab_free_freelist_hook mm/slub.c:1750 [inline]
 slab_free mm/slub.c:3661 [inline]
 __kmem_cache_free+0x205/0x3c0 mm/slub.c:3674
 skb_free_head net/core/skbuff.c:762 [inline]
 skb_release_data+0x5de/0x7a0 net/core/skbuff.c:791
 skb_release_all net/core/skbuff.c:856 [inline]
 __kfree_skb net/core/skbuff.c:870 [inline]
 kfree_skb_reason+0x16f/0x390 net/core/skbuff.c:893
 hsr_forward_skb+0xc64/0x2390
 hsr_dev_xmit+0x145/0x210 net/hsr/hsr_device.c:220
 __netdev_start_xmit include/linux/netdevice.h:4866 [inline]
 netdev_start_xmit include/linux/netdevice.h:4880 [inline]
 xmit_one net/core/dev.c:3627 [inline]
 dev_hard_start_xmit+0x261/0x8c0 net/core/dev.c:3643
 __dev_queue_xmit+0x1b5d/0x3d50 net/core/dev.c:4301
 neigh_output include/net/neighbour.h:544 [inline]
 ip6_finish_output2+0xee6/0x15f0 net/ipv6/ip6_output.c:138
 __ip6_finish_output net/ipv6/ip6_output.c:205 [inline]
 ip6_finish_output+0x6a0/0xa80 net/ipv6/ip6_output.c:216
 dst_output include/net/dst.h:444 [inline]
 NF_HOOK include/linux/netfilter.h:302 [inline]
 ndisc_send_skb+0xbab/0x14e0 net/ipv6/ndisc.c:511
 ndisc_send_ns+0xc8/0x150 net/ipv6/ndisc.c:669
 addrconf_dad_work+0xb0c/0x16b0 net/ipv6/addrconf.c:4203
 process_one_work+0x8a9/0x11d0 kernel/workqueue.c:2292
 worker_thread+0xa47/0x1200 kernel/workqueue.c:2439
 kthread+0x28d/0x320 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
 </TASK>
INFO: NMI handler (nmi_cpu_backtrace_handler) took too long to run: 2.409 msecs
rcu: rcu_preempt kthread timer wakeup didn't happen for 10501 jiffies! g7461 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402
rcu: 	Possible timer handling issue on cpu=1 timer-softirq=3751
rcu: rcu_preempt kthread starved for 10502 jiffies! g7461 f0x0 RCU_GP_WAIT_FQS(5) ->state=0x402 ->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:I stack:26712 pid:16    ppid:2      flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5241 [inline]
 __schedule+0x143f/0x4570 kernel/sched/core.c:6558
 schedule+0xbf/0x180 kernel/sched/core.c:6634
 schedule_timeout+0x1b9/0x300 kernel/time/timer.c:1965
 rcu_gp_fqs_loop+0x2d2/0x1150 kernel/rcu/tree.c:1706
 rcu_gp_kthread+0xa3/0x3b0 kernel/rcu/tree.c:1905
 kthread+0x28d/0x320 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
 </TASK>
rcu: Stack dump where RCU GP kthread last ran:
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 4252 Comm: kworker/1:4 Not tainted 6.1.118-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 10/30/2024
Workqueue: ipv6_addrconf addrconf_dad_work
RIP: 0010:hlock_class kernel/locking/lockdep.c:228 [inline]
RIP: 0010:check_wait_context kernel/locking/lockdep.c:4724 [inline]
RIP: 0010:__lock_acquire+0x552/0x1f80 kernel/locking/lockdep.c:4999
Code: 41 8b 1e 81 e3 ff 1f 00 00 48 89 d8 48 c1 e8 06 48 8d 3c c5 60 12 23 91 be 08 00 00 00 e8 a6 73 77 00 48 0f a3 1d 1e 75 b8 0f <73> 1f 48 8d 04 5b 48 c1 e0 06 48 8d 98 20 91 bb 90 48 ba 00 00 00
RSP: 0018:ffffc900001e0a80 EFLAGS: 00000057
RAX: 0000000000000001 RBX: 000000000000002c RCX: ffffffff816a9d3a
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffff91231260
RBP: 0000000000000002 R08: dffffc0000000000 R09: fffffbfff224624d
R10: 0000000000000000 R11: dffffc0000000001 R12: ffff88801fa40ad8
R13: ffff88801fa40000 R14: ffff88801fa40c18 R15: 1ffff11003f48183
FS:  0000000000000000(0000) GS:ffff8880b8f00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007fa1e9fd50f0 CR3: 000000007638f000 CR4: 00000000003506e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 lock_acquire+0x1f8/0x5a0 kernel/locking/lockdep.c:5662
 rcu_lock_acquire include/linux/rcupdate.h:350 [inline]
 rcu_read_lock include/linux/rcupdate.h:791 [inline]
 advance_sched+0x6ec/0x970 net/sched/sch_taprio.c:753
 __run_hrtimer kernel/time/hrtimer.c:1689 [inline]
 __hrtimer_run_queues+0x5e5/0xe50 kernel/time/hrtimer.c:1753
 hrtimer_interrupt+0x392/0x980 kernel/time/hrtimer.c:1815
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1107 [inline]
 __sysvec_apic_timer_interrupt+0x158/0x5b0 arch/x86/kernel/apic/apic.c:1124
 instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1118 [inline]
 sysvec_apic_timer_interrupt+0x9b/0xc0 arch/x86/kernel/apic/apic.c:1118
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:691
RIP: 0010:__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:152 [inline]
RIP: 0010:_raw_spin_unlock_irqrestore+0xd4/0x130 kernel/locking/spinlock.c:194
Code: 9c 8f 44 24 20 42 80 3c 23 00 74 08 4c 89 f7 e8 02 38 30 f7 f6 44 24 21 02 75 4e 41 f7 c7 00 02 00 00 74 01 fb bf 01 00 00 00 <e8> 17 a8 ac f6 65 8b 05 d8 97 50 75 85 c0 74 3f 48 c7 04 24 0e 36
RSP: 0018:ffffc90003c2ef40 EFLAGS: 00000206
RAX: f15c874d3c565300 RBX: 1ffff92000785dec RCX: ffffffff816b024a
RDX: dffffc0000000000 RSI: ffffffff8b0c01c0 RDI: 0000000000000001
RBP: ffffc90003c2efe0 R08: dffffc0000000000 R09: fffffbfff2246268
R10: 0000000000000000 R11: dffffc0000000001 R12: dffffc0000000000
R13: 1ffff92000785de8 R14: ffffc90003c2ef60 R15: 0000000000000246
 __debug_check_no_obj_freed lib/debugobjects.c:988 [inline]
 debug_check_no_obj_freed+0x455/0x4e0 lib/debugobjects.c:1009
 slab_free_hook mm/slub.c:1699 [inline]
 slab_free_freelist_hook mm/slub.c:1750 [inline]
 slab_free mm/slub.c:3661 [inline]
 __kmem_cache_free+0x205/0x3c0 mm/slub.c:3674
 skb_free_head net/core/skbuff.c:762 [inline]
 skb_release_data+0x5de/0x7a0 net/core/skbuff.c:791
 skb_release_all net/core/skbuff.c:856 [inline]
 __kfree_skb net/core/skbuff.c:870 [inline]
 kfree_skb_reason+0x16f/0x390 net/core/skbuff.c:893
 hsr_forward_skb+0xc64/0x2390
 hsr_dev_xmit+0x145/0x210 net/hsr/hsr_device.c:220
 __netdev_start_xmit include/linux/netdevice.h:4866 [inline]
 netdev_start_xmit include/linux/netdevice.h:4880 [inline]
 xmit_one net/core/dev.c:3627 [inline]
 dev_hard_start_xmit+0x261/0x8c0 net/core/dev.c:3643
 __dev_queue_xmit+0x1b5d/0x3d50 net/core/dev.c:4301
 neigh_output include/net/neighbour.h:544 [inline]
 ip6_finish_output2+0xee6/0x15f0 net/ipv6/ip6_output.c:138
 __ip6_finish_output net/ipv6/ip6_output.c:205 [inline]
 ip6_finish_output+0x6a0/0xa80 net/ipv6/ip6_output.c:216
 dst_output include/net/dst.h:444 [inline]
 NF_HOOK include/linux/netfilter.h:302 [inline]
 ndisc_send_skb+0xbab/0x14e0 net/ipv6/ndisc.c:511
 ndisc_send_ns+0xc8/0x150 net/ipv6/ndisc.c:669
 addrconf_dad_work+0xb0c/0x16b0 net/ipv6/addrconf.c:4203
 process_one_work+0x8a9/0x11d0 kernel/workqueue.c:2292
 worker_thread+0xa47/0x1200 kernel/workqueue.c:2439
 kthread+0x28d/0x320 kernel/kthread.c:376
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295
 </TASK>
INFO: NMI handler (nmi_cpu_backtrace_handler) took too long to run: 2.524 msecs

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/11/22 07:18 linux-6.1.y b67dc5c9ade9 4b25d554 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan INFO: rcu detected stall in addrconf_dad_work
* Struck through repros no longer work on HEAD.