syzbot


BUG: soft lockup in mld_ifc_timer_expire

Status: upstream: reported C repro on 2022/02/20 08:51
Reported-by: syzbot+1c4e94a75748bab4ab48@syzkaller.appspotmail.com
First crash: 1018d, last: 654d
Similar bugs (2)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-4.19 BUG: soft lockup in mld_ifc_timer_expire (2) C error 8 695d 770d 0/1 upstream: reported C repro on 2022/10/26 17:28
linux-4.19 BUG: soft lockup in mld_ifc_timer_expire 1 1080d 1080d 0/1 auto-closed as invalid on 2022/04/19 04:44
Fix bisection attempts (10)
Created Duration User Patch Repo Result
2023/02/19 09:32 40m bisect fix linux-4.14.y OK (0) job log log
2023/01/20 01:44 28m bisect fix linux-4.14.y OK (0) job log log
2022/10/26 23:16 30m bisect fix linux-4.14.y OK (0) job log log
2022/09/19 07:01 23m bisect fix linux-4.14.y OK (0) job log log
2022/08/20 06:39 22m bisect fix linux-4.14.y OK (0) job log log
2022/07/21 06:18 21m bisect fix linux-4.14.y OK (0) job log log
2022/06/21 05:55 22m bisect fix linux-4.14.y OK (0) job log log
2022/05/22 05:33 21m bisect fix linux-4.14.y OK (0) job log log
2022/04/22 00:44 20m bisect fix linux-4.14.y OK (0) job log log
2022/03/23 00:17 26m bisect fix linux-4.14.y OK (0) job log log

Sample crash report:
watchdog: BUG: soft lockup - CPU#0 stuck for 23s! [syz-executor833:8263]
Modules linked in:
irq event stamp: 5797
hardirqs last  enabled at (5796): [<ffffffff87400976>] restore_regs_and_return_to_kernel+0x0/0x2a
hardirqs last disabled at (5797): [<ffffffff874018ae>] apic_timer_interrupt+0x8e/0xa0 arch/x86/entry/entry_64.S:793
softirqs last  enabled at (254): [<ffffffff86328864>] read_pnet include/net/net_namespace.h:282 [inline]
softirqs last  enabled at (254): [<ffffffff86328864>] sock_net include/net/sock.h:2347 [inline]
softirqs last  enabled at (254): [<ffffffff86328864>] unix_create1+0x424/0x4f0 net/unix/af_unix.c:838
softirqs last disabled at (299): [<ffffffff81321d13>] invoke_softirq kernel/softirq.c:368 [inline]
softirqs last disabled at (299): [<ffffffff81321d13>] irq_exit+0x193/0x240 kernel/softirq.c:409
CPU: 0 PID: 8263 Comm: syz-executor833 Not tainted 4.14.267-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
task: ffff8880afb4a440 task.stack: ffff8880afd70000
RIP: 0010:arch_local_irq_restore arch/x86/include/asm/paravirt.h:779 [inline]
RIP: 0010:lock_acquire+0x1ec/0x3f0 kernel/locking/lockdep.c:4001
RSP: 0018:ffff8880ba406f28 EFLAGS: 00000286 ORIG_RAX: ffffffffffffff10
RAX: 1ffffffff11e1279 RBX: ffff8880afb4a440 RCX: 0000000000000d7c
RDX: dffffc0000000000 RSI: 0000000000000001 RDI: 0000000000000286
RBP: ffff88809e752160 R08: ffffffff8b9a96a0 R09: 00000000000425cf
R10: ffff8880afb4ae30 R11: ffff8880afb4a440 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000001
FS:  00005555570db300(0000) GS:ffff8880ba400000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020000080 CR3: 000000009b859000 CR4: 00000000003406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 <IRQ>
 __raw_spin_lock include/linux/spinlock_api_smp.h:142 [inline]
 _raw_spin_lock+0x2a/0x40 kernel/locking/spinlock.c:152
 spin_lock include/linux/spinlock.h:317 [inline]
 tcf_act_police+0x6c/0xd90 net/sched/act_police.c:209
 tcf_action_exec net/sched/act_api.c:491 [inline]
 tcf_action_exec+0x13f/0x330 net/sched/act_api.c:471
 tcf_exts_exec include/net/pkt_cls.h:223 [inline]
 route4_classify+0x708/0x1110 net/sched/cls_route.c:186
 tcf_classify+0xfd/0x300 net/sched/cls_api.c:337
 prio_classify net/sched/sch_prio.c:46 [inline]
 prio_enqueue+0x30c/0x670 net/sched/sch_prio.c:77
 __dev_xmit_skb net/core/dev.c:3225 [inline]
 __dev_queue_xmit+0x121d/0x2480 net/core/dev.c:3489
 neigh_hh_output include/net/neighbour.h:490 [inline]
 neigh_output include/net/neighbour.h:498 [inline]
 ip_finish_output2+0x9db/0x1340 net/ipv4/ip_output.c:237
 ip_finish_output+0x37c/0xc50 net/ipv4/ip_output.c:325
 NF_HOOK_COND include/linux/netfilter.h:239 [inline]
 ip_output+0x1cd/0x510 net/ipv4/ip_output.c:413
 dst_output include/net/dst.h:470 [inline]
 ip_local_out+0x93/0x170 net/ipv4/ip_output.c:125
 iptunnel_xmit+0x5cc/0x950 net/ipv4/ip_tunnel_core.c:91
 geneve_xmit_skb drivers/net/geneve.c:867 [inline]
 geneve_xmit+0xf15/0x2ca0 drivers/net/geneve.c:948
 __netdev_start_xmit include/linux/netdevice.h:4052 [inline]
 netdev_start_xmit include/linux/netdevice.h:4061 [inline]
 xmit_one net/core/dev.c:3005 [inline]
 dev_hard_start_xmit+0x188/0x890 net/core/dev.c:3021
 __dev_queue_xmit+0x1d7f/0x2480 net/core/dev.c:3521
 neigh_hh_output include/net/neighbour.h:490 [inline]
 neigh_output include/net/neighbour.h:498 [inline]
 ip6_finish_output2+0xc6a/0x1f10 net/ipv6/ip6_output.c:120
 ip6_finish_output+0x5c6/0xd50 net/ipv6/ip6_output.c:192
 NF_HOOK_COND include/linux/netfilter.h:239 [inline]
 ip6_output+0x1c5/0x660 net/ipv6/ip6_output.c:209
 dst_output include/net/dst.h:470 [inline]
 NF_HOOK include/linux/netfilter.h:250 [inline]
 mld_sendpack+0x5fe/0xea0 net/ipv6/mcast.c:1657
 mld_send_cr net/ipv6/mcast.c:1953 [inline]
 mld_ifc_timer_expire+0x57c/0xcd0 net/ipv6/mcast.c:2452
 call_timer_fn+0x14a/0x650 kernel/time/timer.c:1280
 expire_timers+0x232/0x4d0 kernel/time/timer.c:1319
 __run_timers kernel/time/timer.c:1637 [inline]
 run_timer_softirq+0x1d5/0x5a0 kernel/time/timer.c:1650
 __do_softirq+0x24d/0x9ff kernel/softirq.c:288
 invoke_softirq kernel/softirq.c:368 [inline]
 irq_exit+0x193/0x240 kernel/softirq.c:409
 exiting_irq arch/x86/include/asm/apic.h:638 [inline]
 smp_apic_timer_interrupt+0x141/0x5e0 arch/x86/kernel/apic/apic.c:1106
 apic_timer_interrupt+0x93/0xa0 arch/x86/entry/entry_64.S:793
 </IRQ>
RIP: 0010:___might_sleep+0x10/0x2b0 kernel/sched/core.c:6006
RSP: 0018:ffff8880afd77a38 EFLAGS: 00000206 ORIG_RAX: ffffffffffffff10
RAX: ffff8880afb4a440 RBX: 0000000000000000 RCX: 0000000000000000
RDX: 0000000000000000 RSI: 0000000000001279 RDI: ffffffff87916300
RBP: ffffffff87916300 R08: 0000000000037b28 R09: 0000000000000008
R10: ffffffffffffffe8 R11: ffff8880afb4a440 R12: 0000000000001279
R13: ffffea00022d0000 R14: 0000000000000000 R15: dffffc0000000000
 clear_huge_page+0xc4/0x7b0 mm/memory.c:4729
 __do_huge_pmd_anonymous_page mm/huge_memory.c:574 [inline]
 do_huge_pmd_anonymous_page+0x93b/0x1700 mm/huge_memory.c:731
 create_huge_pmd mm/memory.c:3984 [inline]
 __handle_mm_fault+0x2ac4/0x4620 mm/memory.c:4187
 handle_mm_fault+0x455/0x9c0 mm/memory.c:4253
 __do_page_fault+0x549/0xad0 arch/x86/mm/fault.c:1442
 page_fault+0x25/0x50 arch/x86/entry/entry_64.S:1123
RIP: 0010:__put_user_4+0x1c/0x30 arch/x86/lib/putuser.S:70
RSP: 0018:ffff8880afd77e50 EFLAGS: 00050293
RAX: 0000000000000004 RBX: 00007fffffffeffd RCX: 0000000020000080
RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000000000286
RBP: 0000000000000004 R08: ffffffff8b9cc828 R09: 0000000000000000
R10: 0000000000000000 R11: ffff8880afb4a440 R12: 1ffff11015faefcd
R13: ffff8880a9b91340 R14: 0000000000000005 R15: ffff8880a893cd40
 SYSC_socketpair net/socket.c:1423 [inline]
 SyS_socketpair+0x25e/0x480 net/socket.c:1366
 do_syscall_64+0x1d5/0x640 arch/x86/entry/common.c:292
 entry_SYSCALL_64_after_hwframe+0x46/0xbb
RIP: 0033:0x7f9243500e99
RSP: 002b:00007ffff89fc198 EFLAGS: 00000246 ORIG_RAX: 0000000000000035
RAX: ffffffffffffffda RBX: 00007ffff89fc1c0 RCX: 00007f9243500e99
RDX: 0000000000000000 RSI: 0000000000000001 RDI: 0000000000000001
RBP: 0000000000000000 R08: 000000000000000d R09: 000000000000000d
R10: 0000000020000080 R11: 0000000000000246 R12: 00007ffff89fc1b0
R13: 00000000000f4240 R14: 0000000000012d96 R15: 00007ffff89fc1a4
Code: 84 08 00 00 00 00 00 00 48 c1 e8 03 80 3c 10 00 0f 85 ee 01 00 00 48 83 3d f9 bb ae 07 00 0f 84 4a 01 00 00 48 8b 7c 24 08 57 9d <0f> 1f 44 00 00 48 83 c4 18 5b 5d 41 5c 41 5d 41 5e 41 5f c3 65 
----------------
Code disassembly (best guess):
   0:	84 08                	test   %cl,(%rax)
   2:	00 00                	add    %al,(%rax)
   4:	00 00                	add    %al,(%rax)
   6:	00 00                	add    %al,(%rax)
   8:	48 c1 e8 03          	shr    $0x3,%rax
   c:	80 3c 10 00          	cmpb   $0x0,(%rax,%rdx,1)
  10:	0f 85 ee 01 00 00    	jne    0x204
  16:	48 83 3d f9 bb ae 07 	cmpq   $0x0,0x7aebbf9(%rip)        # 0x7aebc17
  1d:	00
  1e:	0f 84 4a 01 00 00    	je     0x16e
  24:	48 8b 7c 24 08       	mov    0x8(%rsp),%rdi
  29:	57                   	push   %rdi
  2a:	9d                   	popfq
* 2b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1) <-- trapping instruction
  30:	48 83 c4 18          	add    $0x18,%rsp
  34:	5b                   	pop    %rbx
  35:	5d                   	pop    %rbp
  36:	41 5c                	pop    %r12
  38:	41 5d                	pop    %r13
  3a:	41 5e                	pop    %r14
  3c:	41 5f                	pop    %r15
  3e:	c3                   	retq
  3f:	65                   	gs

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2022/02/20 08:50 linux-4.14.y a35d65bedfbc 3cd800e4 .config console log report syz C ci2-linux-4-14 BUG: soft lockup in mld_ifc_timer_expire
* Struck through repros no longer work on HEAD.