syzbot


INFO: rcu detected stall in hsr_announce (5)

Status: closed as invalid on 2022/02/08 10:00
Reported-by: syzbot+@syzkaller.appspotmail.com
First crash: 388d, last: 376d
similar bugs (8):
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream INFO: rcu detected stall in hsr_announce (3) 1 1089d 1088d 0/24 closed as invalid on 2019/12/04 14:04
upstream INFO: rcu detected stall in hsr_announce (6) 2 214d 214d 0/24 auto-closed as invalid on 2022/06/25 07:59
linux-4.14 INFO: rcu detected stall in hsr_announce C error 25 876d 1074d 0/1 upstream: reported C repro on 2019/12/17 23:42
upstream INFO: rcu detected stall in hsr_announce (4) 1 715d 715d 0/24 auto-closed as invalid on 2021/03/11 15:56
upstream INFO: rcu detected stall in hsr_announce 1 1169d 1169d 0/24 auto-closed as invalid on 2019/11/13 18:24
upstream INFO: rcu detected stall in hsr_announce (2) 3 1093d 1093d 0/24 closed as invalid on 2019/11/29 14:24
linux-4.19 INFO: rcu detected stall in hsr_announce 1 788d 788d 0/1 auto-closed as invalid on 2021/01/27 07:34
linux-4.19 BUG: soft lockup in hsr_announce (2) 7 39d 493d 0/1 upstream: reported on 2021/07/20 20:52

Sample crash report:
rcu: INFO: rcu_preempt self-detected stall on CPU
rcu: 	0-....: (9866 ticks this GP) idle=44b/1/0x4000000000000000 softirq=99525/99527 fqs=5234 
	(t=10502 jiffies g=163309 q=1208)
NMI backtrace for cpu 0
CPU: 0 PID: 2406 Comm: syz-executor.5 Not tainted 5.16.0-rc1-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
 <IRQ>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x1dc/0x2d8 lib/dump_stack.c:106
 nmi_cpu_backtrace+0x45f/0x490 lib/nmi_backtrace.c:105
 nmi_trigger_cpumask_backtrace+0x16a/0x280 lib/nmi_backtrace.c:62
 trigger_single_cpu_backtrace include/linux/nmi.h:164 [inline]
 rcu_dump_cpu_stacks+0x22d/0x390 kernel/rcu/tree_stall.h:343
 print_cpu_stall kernel/rcu/tree_stall.h:627 [inline]
 check_cpu_stall kernel/rcu/tree_stall.h:711 [inline]
 rcu_pending kernel/rcu/tree.c:3878 [inline]
 rcu_sched_clock_irq+0x1e33/0x2bc0 kernel/rcu/tree.c:2597
 update_process_times+0x197/0x200 kernel/time/timer.c:1785
 tick_sched_handle kernel/time/tick-sched.c:226 [inline]
 tick_sched_timer+0x27d/0x420 kernel/time/tick-sched.c:1421
 __run_hrtimer kernel/time/hrtimer.c:1685 [inline]
 __hrtimer_run_queues+0x4cb/0xa60 kernel/time/hrtimer.c:1749
 hrtimer_interrupt+0x3b3/0x1040 kernel/time/hrtimer.c:1811
 local_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1086 [inline]
 __sysvec_apic_timer_interrupt+0xf9/0x270 arch/x86/kernel/apic/apic.c:1103
 sysvec_apic_timer_interrupt+0x3e/0xb0 arch/x86/kernel/apic/apic.c:1097
 asm_sysvec_apic_timer_interrupt+0x12/0x20
RIP: 0010:lock_acquire+0x21f/0x4d0 kernel/locking/lockdep.c:5641
Code: 08 4c 89 f7 e8 02 6b 6a 00 f6 84 24 81 00 00 00 02 0f 85 13 02 00 00 41 f7 c4 00 02 00 00 74 01 fb 48 c7 44 24 40 0e 36 e0 45 <4b> c7 04 2f 00 00 00 00 43 c7 44 2f 09 00 00 00 00 43 c7 44 2f 11
RSP: 0018:ffffc90000007480 EFLAGS: 00000206
RAX: 0000000000000001 RBX: 1ffff92000000ea0 RCX: ffff88801c63e158
RDX: 0000000000000000 RSI: 0000000000000301 RDI: 0000000000000000
RBP: ffffc900000075d8 R08: dffffc0000000000 R09: fffffbfff2034ddd
R10: fffffbfff2034ddd R11: 0000000000000000 R12: 0000000000000246
R13: 1ffff92000000e98 R14: ffffc90000007500 R15: dffffc0000000000
 rcu_lock_acquire+0x2a/0x30 include/linux/rcupdate.h:268
 rcu_read_lock include/linux/rcupdate.h:688 [inline]
 veth_xmit+0x56/0x970 drivers/net/veth.c:327
 __netdev_start_xmit include/linux/netdevice.h:4987 [inline]
 netdev_start_xmit include/linux/netdevice.h:5001 [inline]
 xmit_one net/core/dev.c:3590 [inline]
 dev_hard_start_xmit+0x20b/0x450 net/core/dev.c:3606
 __dev_queue_xmit+0x1adc/0x35c0 net/core/dev.c:4226
 hsr_xmit net/hsr/hsr_forward.c:381 [inline]
 hsr_forward_do net/hsr/hsr_forward.c:472 [inline]
 hsr_forward_skb+0x1225/0x1ff0 net/hsr/hsr_forward.c:620
 hsr_announce+0x15b/0x2d0 net/hsr/hsr_device.c:382
 call_timer_fn+0xf6/0x210 kernel/time/timer.c:1421
 expire_timers kernel/time/timer.c:1466 [inline]
 __run_timers+0x71a/0x910 kernel/time/timer.c:1734
 run_timer_softirq+0x63/0xf0 kernel/time/timer.c:1747
 __do_softirq+0x392/0x7a3 kernel/softirq.c:558
 __irq_exit_rcu+0xec/0x170 kernel/softirq.c:636
 irq_exit_rcu+0x5/0x20 kernel/softirq.c:648
 sysvec_apic_timer_interrupt+0x91/0xb0 arch/x86/kernel/apic/apic.c:1097
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x12/0x20
RIP: 0010:finish_lock_switch+0x1c5/0x350 kernel/sched/core.c:4733
Code: be ff ff ff ff e8 ab 9d cb 08 85 c0 74 37 4d 85 e4 75 58 0f 1f 44 00 00 4c 89 ff e8 25 45 ce 08 e8 40 c3 2e 00 fb 48 83 c4 10 <5b> 41 5c 41 5d 41 5e 41 5f 5d c3 0f 0b 4d 85 e4 0f 85 4a ff ff ff
RSP: 0018:ffffc90006106cc8 EFLAGS: 00000282
RAX: c1fe0da178061c00 RBX: 1ffff11017347410 RCX: ffffffff81665dc1
RDX: dffffc0000000000 RSI: 0000000000000001 RDI: 0000000000000000
RBP: ffff8880b9a3a080 R08: dffffc0000000000 R09: fffffbfff2034ddf
R10: fffffbfff2034ddf R11: 0000000000000000 R12: 0000000000000000
R13: ffff8880b9a3a318 R14: dffffc0000000000 R15: ffff8880b9a395c0
 finish_task_switch+0x140/0x630 kernel/sched/core.c:4850
 context_switch kernel/sched/core.c:4975 [inline]
 __schedule+0xb7a/0x1460 kernel/sched/core.c:6253
 preempt_schedule_irq+0xf7/0x1c0 kernel/sched/core.c:6668
 irqentry_exit+0x56/0x90 kernel/entry/common.c:425
 asm_sysvec_apic_timer_interrupt+0x12/0x20
RIP: 0010:put_cpu_partial+0x147/0x180 mm/slub.c:2602
Code: 00 00 48 3b 44 24 08 75 4d 48 83 c4 10 5b 41 5c 41 5d 41 5e 41 5f 5d c3 e8 e6 27 58 08 41 f7 c5 00 02 00 00 74 c3 fb 4d 85 ff <75> c2 eb cb 48 c7 c7 00 61 df 8c 48 89 de e8 e6 ab 8f 02 e9 fd fe
RSP: 0018:ffffc90006106ff0 EFLAGS: 00000286
RAX: c1fe0da178061c00 RBX: 0000000000000000 RCX: ffffffff81665dc1
RDX: dffffc0000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: ffff8880b9a3d280 R08: dffffc0000000000 R09: fffffbfff2034ddf
R10: fffffbfff2034ddf R11: 0000000000000000 R12: ffff888011842140
R13: 0000000000000286 R14: ffffea0000d97000 R15: ffffea0000e56e00
 do_slab_free mm/slub.c:3501 [inline]
 ___cache_free+0xe6/0x120 mm/slub.c:3520
 qlist_free_all mm/kasan/quarantine.c:165 [inline]
 kasan_quarantine_reduce+0x151/0x1c0 mm/kasan/quarantine.c:272
 __kasan_slab_alloc+0x2f/0xf0 mm/kasan/common.c:444
 kasan_slab_alloc include/linux/kasan.h:259 [inline]
 slab_post_alloc_hook mm/slab.h:519 [inline]
 slab_alloc_node mm/slub.c:3234 [inline]
 slab_alloc mm/slub.c:3242 [inline]
 kmem_cache_alloc+0x1c9/0x310 mm/slub.c:3247
 ptlock_alloc+0x1c/0x60 mm/memory.c:5448
 ptlock_init include/linux/mm.h:2332 [inline]
 pgtable_pte_page_ctor include/linux/mm.h:2359 [inline]
 __pte_alloc_one include/asm-generic/pgalloc.h:66 [inline]
 pte_alloc_one+0xd1/0x360 arch/x86/mm/pgtable.c:33
 __pte_alloc+0x75/0x210 mm/memory.c:464
 copy_pte_range+0x29bc/0x30c0 mm/memory.c:1024
 copy_pmd_range mm/memory.c:1159 [inline]
 copy_pud_range mm/memory.c:1196 [inline]
 copy_p4d_range mm/memory.c:1220 [inline]
 copy_page_range+0xce6/0x1140 mm/memory.c:1293
 dup_mmap+0xa87/0xfd0 kernel/fork.c:609
 dup_mm+0x8c/0x310 kernel/fork.c:1450
 copy_mm kernel/fork.c:1502 [inline]
 copy_process+0x28d7/0x5ca0 kernel/fork.c:2191
 kernel_clone+0x22a/0x7e0 kernel/fork.c:2582
 __do_sys_fork+0xac/0x110 kernel/fork.c:2645
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x44/0xd0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x44/0xae
RIP: 0033:0x7f26f2373ae9
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 bc ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f26ef8e9188 EFLAGS: 00000246 ORIG_RAX: 0000000000000039
RAX: ffffffffffffffda RBX: 00007f26f2486f60 RCX: 00007f26f2373ae9
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 00007f26f23cdf6d R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fff1f36c9ef R14: 00007f26ef8e9300 R15: 0000000000022000
 </TASK>
----------------
Code disassembly (best guess):
   0:	08 4c 89 f7          	or     %cl,-0x9(%rcx,%rcx,4)
   4:	e8 02 6b 6a 00       	callq  0x6a6b0b
   9:	f6 84 24 81 00 00 00 	testb  $0x2,0x81(%rsp)
  10:	02
  11:	0f 85 13 02 00 00    	jne    0x22a
  17:	41 f7 c4 00 02 00 00 	test   $0x200,%r12d
  1e:	74 01                	je     0x21
  20:	fb                   	sti
  21:	48 c7 44 24 40 0e 36 	movq   $0x45e0360e,0x40(%rsp)
  28:	e0 45
* 2a:	4b c7 04 2f 00 00 00 	movq   $0x0,(%r15,%r13,1) <-- trapping instruction
  31:	00
  32:	43 c7 44 2f 09 00 00 	movl   $0x0,0x9(%r15,%r13,1)
  39:	00 00
  3b:	43                   	rex.XB
  3c:	c7                   	.byte 0xc7
  3d:	44 2f                	rex.R (bad)
  3f:	11                   	.byte 0x11

Crashes (4):
Manager Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Title
ci-upstream-kasan-gce-smack-root 2021/11/15 12:36 upstream fa55b7dcdc43 83f5c9b5 .config log report info INFO: rcu detected stall in hsr_announce
ci-upstream-kasan-gce-selinux-root 2021/11/13 18:41 upstream 66f4beaa6c1d 83f5c9b5 .config log report info INFO: rcu detected stall in hsr_announce
ci-upstream-kasan-gce-smack-root 2021/11/12 11:32 upstream 5833291ab6de 75b04091 .config log report info INFO: rcu detected stall in hsr_announce
ci-upstream-kasan-gce-selinux-root 2021/11/02 20:24 upstream bfc484fe6abb 17f3edd2 .config log report info INFO: rcu detected stall in hsr_announce
* Struck through repros no longer work on HEAD.