syzbot


INFO: rcu detected stall in addrconf_dad_work (5)

Status: upstream: reported C repro on 2020/09/07 15:59
Subsystems: net
[Documentation on labels]
Reported-by: syzbot+251463bfa779ca087ad1@syzkaller.appspotmail.com
First crash: 1328d, last: 8d23h
Cause bisection: introduced by (bisect log) :
commit 5a781ccbd19e4664babcbe4b4ead7aa2b9283d22
Author: Vinicius Costa Gomes <vinicius.gomes@intel.com>
Date: Sat Sep 29 00:59:43 2018 +0000

  tc: Add support for configuring the taprio scheduler

Crash: no output from test machine (log)
Repro: C syz .config
  
Fix bisection the fix commit could be any of (bisect log):
  fc3abb53250a Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/hid/hid
  9e9fb7655ed5 Merge tag 'net-next-5.15' of git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next
  
Discussions (1)
Title Replies (including bot) Last reply
INFO: rcu detected stall in addrconf_dad_work (5) 0 (1) 2020/09/07 15:59
Similar bugs (10)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in addrconf_dad_work (4) cgroups mm 8 1568d 1568d 0/26 closed as invalid on 2020/01/09 08:13
upstream INFO: rcu detected stall in addrconf_dad_work (3) kernel 6 1568d 1568d 0/26 closed as invalid on 2020/01/08 05:23
linux-4.14 INFO: rcu detected stall in addrconf_dad_work C done 18 1684d 1691d 1/1 fixed on 2019/12/06 10:33
upstream INFO: rcu detected stall in addrconf_dad_work (2) kernel 15 1603d 1604d 0/26 closed as invalid on 2019/12/04 14:14
upstream INFO: rcu detected stall in addrconf_dad_work C done 126 1682d 1687d 13/26 fixed on 2019/10/09 10:54
linux-4.19 INFO: rcu detected stall in addrconf_dad_work (2) C done 1 1587d 1587d 1/1 fixed on 2020/01/19 15:05
linux-4.19 INFO: rcu detected stall in addrconf_dad_work C done 19 1679d 1691d 1/1 fixed on 2019/12/07 19:18
linux-5.15 BUG: soft lockup in addrconf_dad_work 1 281d 281d 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 459d 801d 0/1 upstream: reported C repro on 2022/02/13 10:05
upstream BUG: soft lockup in addrconf_dad_work net C done 1 1686d 1686d 13/26 fixed on 2019/10/09 10:54
Last patch testing requests (10)
Created Duration User Patch Repo Result
2024/03/14 03:04 19m retest repro git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci report log
2024/02/20 13:46 21m retest repro linux-next error OK
2024/02/20 00:59 17m retest repro upstream report log
2024/02/05 22:31 18m retest repro upstream report log
2023/12/11 05:56 16m retest repro linux-next error OK
2023/12/11 05:14 18m retest repro upstream report log
2023/11/27 02:51 20m retest repro upstream report log
2023/09/18 03:17 15m retest repro linux-next report log
2023/09/18 02:57 16m retest repro upstream report log
2023/09/18 02:09 19m retest repro upstream report log
Fix bisection attempts (12)
Created Duration User Patch Repo Result
2021/09/01 13:04 16m bisect fix upstream job log (2)
2021/08/02 04:03 22m bisect fix upstream job log (0) log
2021/07/01 06:56 22m bisect fix upstream job log (0) log
2021/06/01 06:34 22m bisect fix upstream job log (0) log
2021/05/02 06:00 25m bisect fix upstream job log (0) log
2021/04/01 23:43 23m bisect fix upstream job log (0) log
2021/03/01 07:32 24m bisect fix upstream job log (0) log
2021/02/06 16:31 0m bisect fix upstream error job log (0)
2021/01/07 16:04 26m bisect fix upstream job log (0) log
2020/12/07 15:34 24m bisect fix upstream job log (0) log
2020/11/07 13:38 25m bisect fix upstream job log (0) log
2020/10/08 08:53 26m bisect fix upstream job log (0) log

Sample crash report:
rcu: INFO: rcu_preempt detected stalls on CPUs/tasks:
rcu: 	1-...!: (0 ticks this GP) idle=e07c/1/0x4000000000000000 softirq=6829/6829 fqs=1
rcu: 	(detected by 0, t=10502 jiffies, g=7553, q=35 ncpus=2)
Sending NMI from CPU 0 to CPUs 1:
NMI backtrace for cpu 1
CPU: 1 PID: 10 Comm: kworker/u8:0 Not tainted 6.8.0-syzkaller-08951-gfe46a7dd189e #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: ipv6_addrconf addrconf_dad_work
RIP: 0010:__lock_acquire+0xa1b/0x3b30 kernel/locking/lockdep.c:4998
Code: 00 00 fc ff df 48 c1 ea 03 80 3c 02 00 0f 85 a1 2a 00 00 48 8b 04 24 48 8b 98 c8 0a 00 00 8b 44 24 10 85 c0 0f 84 3c 05 00 00 <c7> 44 24 78 00 00 00 00 48 b8 00 00 00 00 00 fc ff df 4c 89 f2 48
RSP: 0018:ffffc90000a08b40 EFLAGS: 00000006
RAX: 0000000000000003 RBX: 165b14d635705afd RCX: ffffffff816b110a
RDX: 1ffff11002e54519 RSI: 0000000000000008 RDI: ffffffff93da7180
RBP: dffffc0000000000 R08: 0000000000000000 R09: fffffbfff27b4e30
R10: ffffffff93da7187 R11: 0000000000000003 R12: ffff8880172a2949
R13: ffff8880172a2928 R14: ffff8880172a2950 R15: 0000000000000002
FS:  0000000000000000(0000) GS:ffff8880b9500000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020000600 CR3: 0000000023dca000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <NMI>
 </NMI>
 <IRQ>
 lock_acquire kernel/locking/lockdep.c:5754 [inline]
 lock_acquire+0x1b1/0x540 kernel/locking/lockdep.c:5719
 rcu_lock_acquire include/linux/rcupdate.h:298 [inline]
 rcu_read_lock include/linux/rcupdate.h:750 [inline]
 advance_sched+0x67f/0xc60 net/sched/sch_taprio.c:985
 __run_hrtimer kernel/time/hrtimer.c:1692 [inline]
 __hrtimer_run_queues+0x20c/0xc20 kernel/time/hrtimer.c:1756
 hrtimer_interrupt+0x31b/0x800 kernel/time/hrtimer.c:1818
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1032 [inline]
 __sysvec_apic_timer_interrupt+0x10f/0x410 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:deref_stack_reg arch/x86/kernel/unwind_orc.c:406 [inline]
RIP: 0010:unwind_next_frame+0xdd5/0x23a0 arch/x86/kernel/unwind_orc.c:585
Code: 45 84 ff 0f 84 37 f6 ff ff e8 27 54 50 00 48 8b 7c 24 28 e8 6d e6 ff ff 48 8b 0c 24 48 ba 00 00 00 00 00 fc ff df 48 c1 e9 03 <80> 3c 11 00 0f 85 2c 12 00 00 48 8b 54 24 10 48 89 43 48 48 b8 00
RSP: 0018:ffffc900000f70c0 EFLAGS: 00000a02
RAX: ffffffff897ac635 RBX: ffffc900000f7140 RCX: 1ffff9200001ee31
RDX: dffffc0000000000 RSI: ffffffff813c8b09 RDI: ffffc900000f7bc8
RBP: 0000000000000001 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000001 R11: dffffc0000000000 R12: ffffffff90c0905a
R13: ffffc900000f7bd0 R14: ffffffff90c0905e R15: 0000000000000001
 arch_stack_walk+0x100/0x170 arch/x86/kernel/stacktrace.c:25
 stack_trace_save+0x95/0xd0 kernel/stacktrace.c:122
 save_stack+0x162/0x1f0 mm/page_owner.c:129
 __set_page_owner+0x1f/0x60 mm/page_owner.c:195
 set_page_owner include/linux/page_owner.h:31 [inline]
 post_alloc_hook+0x2d4/0x350 mm/page_alloc.c:1533
 prep_new_page mm/page_alloc.c:1540 [inline]
 get_page_from_freelist+0xa28/0x3780 mm/page_alloc.c:3311
 __alloc_pages+0x22b/0x2410 mm/page_alloc.c:4569
 __alloc_pages_node include/linux/gfp.h:238 [inline]
 alloc_pages_node include/linux/gfp.h:261 [inline]
 alloc_slab_page mm/slub.c:2175 [inline]
 allocate_slab mm/slub.c:2338 [inline]
 new_slab+0xcc/0x3a0 mm/slub.c:2391
 ___slab_alloc+0x66d/0x1790 mm/slub.c:3525
 __slab_alloc.constprop.0+0x56/0xb0 mm/slub.c:3610
 __slab_alloc_node mm/slub.c:3663 [inline]
 slab_alloc_node mm/slub.c:3835 [inline]
 kmem_cache_alloc_node+0x10a/0x340 mm/slub.c:3888
 __alloc_skb+0x2b1/0x380 net/core/skbuff.c:658
 alloc_skb include/linux/skbuff.h:1318 [inline]
 ndisc_alloc_skb+0x135/0x330 net/ipv6/ndisc.c:422
 ndisc_ns_create+0x160/0x7c0 net/ipv6/ndisc.c:622
 ndisc_send_ns+0xaa/0x150 net/ipv6/ndisc.c:664
 addrconf_dad_work+0xca5/0x1500 net/ipv6/addrconf.c:4279
 process_one_work+0x9a9/0x1a60 kernel/workqueue.c:3254
 process_scheduled_works kernel/workqueue.c:3335 [inline]
 worker_thread+0x6c8/0xf70 kernel/workqueue.c:3416
 kthread+0x2c1/0x3a0 kernel/kthread.c:388
 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:243
 </TASK>
INFO: NMI handler (nmi_cpu_backtrace_handler) took too long to run: 4.018 msecs
rcu: rcu_preempt kthread starved for 10495 jiffies! g7553 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:28736 pid:16    tgid:16    ppid:2      flags:0x00004000
Call Trace:
 <TASK>
 context_switch kernel/sched/core.c:5409 [inline]
 __schedule+0xf15/0x5c70 kernel/sched/core.c:6736
 __schedule_loop kernel/sched/core.c:6813 [inline]
 schedule+0xe7/0x350 kernel/sched/core.c:6828
 schedule_timeout+0x136/0x2a0 kernel/time/timer.c:2572
 rcu_gp_fqs_loop+0x1eb/0xb00 kernel/rcu/tree.c:1663
 rcu_gp_kthread+0x271/0x380 kernel/rcu/tree.c:1862
 kthread+0x2c1/0x3a0 kernel/kthread.c:388
 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:243
 </TASK>
rcu: Stack dump where RCU GP kthread last ran:
CPU: 0 PID: 1267 Comm: kworker/u8:6 Not tainted 6.8.0-syzkaller-08951-gfe46a7dd189e #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: events_unbound toggle_allocation_gate
RIP: 0010:csd_lock_wait kernel/smp.c:311 [inline]
RIP: 0010:smp_call_function_many_cond+0x4e7/0x1590 kernel/smp.c:855
Code: 0c 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 4b 05 0c 00 f3 90 <41> 0f b6 04 24 40 38 c5 7c 08 84 c0 0f 85 5d 0e 00 00 8b 43 08 31
RSP: 0018:ffffc90004b87910 EFLAGS: 00000293
RAX: 0000000000000000 RBX: ffff8880b9544380 RCX: ffffffff8180f38b
RDX: ffff8880234f0000 RSI: ffffffff8180f365 RDI: 0000000000000005
RBP: 0000000000000003 R08: 0000000000000005 R09: 0000000000000000
R10: 0000000000000001 R11: 0000000000000006 R12: ffffed10172a8871
R13: 0000000000000001 R14: ffff8880b9544388 R15: ffff8880b943f840
FS:  0000000000000000(0000) GS:ffff8880b9400000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007ffc4c8ef788 CR3: 000000000d57a000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 </IRQ>
 <TASK>
 on_each_cpu_cond_mask+0x40/0x90 kernel/smp.c:1023
 on_each_cpu include/linux/smp.h:71 [inline]
 text_poke_sync arch/x86/kernel/alternative.c:2086 [inline]
 text_poke_bp_batch+0x22b/0x760 arch/x86/kernel/alternative.c:2296
 text_poke_flush arch/x86/kernel/alternative.c:2487 [inline]
 text_poke_flush arch/x86/kernel/alternative.c:2484 [inline]
 text_poke_finish+0x30/0x40 arch/x86/kernel/alternative.c:2494
 arch_jump_label_transform_apply+0x1c/0x30 arch/x86/kernel/jump_label.c:146
 jump_label_update+0x1d7/0x400 kernel/jump_label.c:829
 static_key_enable_cpuslocked+0x1b7/0x270 kernel/jump_label.c:205
 static_key_enable+0x1a/0x20 kernel/jump_label.c:218
 toggle_allocation_gate mm/kfence/core.c:826 [inline]
 toggle_allocation_gate+0xf8/0x250 mm/kfence/core.c:818
 process_one_work+0x9a9/0x1a60 kernel/workqueue.c:3254
 process_scheduled_works kernel/workqueue.c:3335 [inline]
 worker_thread+0x6c8/0xf70 kernel/workqueue.c:3416
 kthread+0x2c1/0x3a0 kernel/kthread.c:388
 ret_from_fork+0x45/0x80 arch/x86/kernel/process.c:147
 ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:243
 </TASK>

Crashes (9):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/04/15 12:53 upstream fe46a7dd189e c8349e48 .config console log report syz C [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root INFO: rcu detected stall in addrconf_dad_work
2023/09/04 01:04 upstream 6e32dfcccfcc 696ea0d2 .config console log report syz C [disk image] [vmlinux] [kernel image] ci-upstream-kasan-gce-selinux-root INFO: rcu detected stall in addrconf_dad_work
2023/08/25 18:28 linux-next 626932085009 03d9c195 .config console log report syz C [disk image] [vmlinux] [kernel image] ci-upstream-linux-next-kasan-gce-root INFO: rcu detected stall in addrconf_dad_work
2020/09/03 15:50 upstream fc3abb53250a abf9ba4f .config console log report syz C ci-upstream-kasan-gce-root
2024/02/29 02:34 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci 381f163531d8 352ab904 .config console log report syz C [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: soft lockup in addrconf_dad_work
2022/02/13 10:24 upstream b81b1829e7e3 8b9ca619 .config console log report syz C ci-upstream-kasan-gce INFO: rcu detected stall in addrconf_dad_work
2022/02/13 10:23 net-next-old 5a8fb33e5305 8b9ca619 .config console log report syz C ci-upstream-net-kasan-gce INFO: rcu detected stall in addrconf_dad_work
2023/07/26 07:54 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci e40939bbfc68 6756545c .config console log report syz [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: soft lockup in addrconf_dad_work
2023/07/19 17:17 git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux.git for-kernelci e40939bbfc68 022df2bb .config console log report syz [disk image] [vmlinux] [kernel image] ci-upstream-gce-arm64 BUG: soft lockup in addrconf_dad_work
* Struck through repros no longer work on HEAD.