syzbot


BUG: soft lockup in br_ip4_multicast_query_expired

Status: upstream: reported C repro on 2022/02/05 20:25
Reported-by: syzbot+21390f781dffc7626887@syzkaller.appspotmail.com
First crash: 1032d, last: 820d
Fix bisection: failed (error log, bisect log)
  
Similar bugs (1)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
linux-4.19 BUG: soft lockup in br_ip4_multicast_query_expired 3 967d 1082d 0/1 auto-closed as invalid on 2022/08/09 22:32
Fix bisection attempts (8)
Created Duration User Patch Repo Result
2022/10/13 02:19 0m bisect fix linux-4.14.y error job log
2022/09/06 11:56 22m bisect fix linux-4.14.y OK (0) job log log
2022/08/07 11:20 24m bisect fix linux-4.14.y OK (0) job log log
2022/07/08 10:56 23m bisect fix linux-4.14.y OK (0) job log log
2022/06/08 10:31 24m bisect fix linux-4.14.y OK (0) job log log
2022/05/09 10:07 23m bisect fix linux-4.14.y OK (0) job log log
2022/04/06 20:59 21m bisect fix linux-4.14.y OK (0) job log log
2022/03/07 20:28 30m bisect fix linux-4.14.y OK (0) job log log

Sample crash report:
watchdog: BUG: soft lockup - CPU#0 stuck for 23s! [ksoftirqd/0:7]
Modules linked in:
irq event stamp: 11566697
hardirqs last  enabled at (11566696): [<ffffffff817eafd0>] slab_alloc_node mm/slab.c:3327 [inline]
hardirqs last  enabled at (11566696): [<ffffffff817eafd0>] kmem_cache_alloc_node_trace+0x2f0/0x400 mm/slab.c:3659
hardirqs last disabled at (11566697): [<ffffffff874018ae>] apic_timer_interrupt+0x8e/0xa0 arch/x86/entry/entry_64.S:793
softirqs last  enabled at (4038750): [<ffffffff8760068b>] __do_softirq+0x68b/0x9ff kernel/softirq.c:314
softirqs last disabled at (4038755): [<ffffffff81321940>] run_ksoftirqd+0x50/0x1a0 kernel/softirq.c:670
CPU: 0 PID: 7 Comm: ksoftirqd/0 Not tainted 4.14.264-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
task: ffff8880b540a1c0 task.stack: ffff8880b5418000
RIP: 0010:unwind_get_return_address arch/x86/kernel/unwind_orc.c:252 [inline]
RIP: 0010:unwind_get_return_address+0x42/0x90 arch/x86/kernel/unwind_orc.c:247
RSP: 0018:ffff8880b541f688 EFLAGS: 00000a02 ORIG_RAX: ffffffffffffff10
RAX: dffffc0000000000 RBX: ffff8880b541f6b0 RCX: 0000000000000000
RDX: 1ffff11016a83edf RSI: ffff8880b541f5a0 RDI: ffff8880b541f6b0
RBP: ffff8880b541f6f8 R08: 0000000000000001 R09: 0000000000000001
R10: ffff8880b541fc18 R11: 0000000000000001 R12: ffff8880b541f738
R13: 0000000000000000 R14: ffff88813fe74940 R15: 00000000000001c0
FS:  0000000000000000(0000) GS:ffff8880ba400000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055c63de69d60 CR3: 0000000008e6a000 CR4: 00000000003406f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
 __save_stack_trace+0xa0/0x160 arch/x86/kernel/stacktrace.c:45
 save_stack mm/kasan/kasan.c:447 [inline]
 set_track mm/kasan/kasan.c:459 [inline]
 kasan_kmalloc+0xeb/0x160 mm/kasan/kasan.c:551
 __do_kmalloc_node mm/slab.c:3682 [inline]
 __kmalloc_node_track_caller+0x4c/0x70 mm/slab.c:3696
 __kmalloc_reserve net/core/skbuff.c:137 [inline]
 __alloc_skb+0x96/0x510 net/core/skbuff.c:205
 __netdev_alloc_skb+0x54/0x430 net/core/skbuff.c:407
 __netdev_alloc_skb_ip_align include/linux/skbuff.h:2696 [inline]
 netdev_alloc_skb_ip_align include/linux/skbuff.h:2706 [inline]
 br_ip4_multicast_alloc_query net/bridge/br_multicast.c:382 [inline]
 br_multicast_alloc_query net/bridge/br_multicast.c:581 [inline]
 __br_multicast_send_query+0x109f/0x2db0 net/bridge/br_multicast.c:914
 br_multicast_send_query+0x1c6/0x340 net/bridge/br_multicast.c:961
 br_multicast_query_expired net/bridge/br_multicast.c:1914 [inline]
 br_ip4_multicast_query_expired+0xd0/0x100 net/bridge/br_multicast.c:1922
 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
 run_ksoftirqd+0x50/0x1a0 kernel/softirq.c:670
 smpboot_thread_fn+0x5c1/0x920 kernel/smpboot.c:164
 kthread+0x30d/0x420 kernel/kthread.c:232
 ret_from_fork+0x24/0x30 arch/x86/entry/entry_64.S:404
Code: b6 04 02 84 c0 74 04 3c 03 7e 51 8b 03 85 c0 75 05 5b 31 c0 5d c3 48 8d 6b 48 48 b8 00 00 00 00 00 fc ff df 48 89 ea 48 c1 ea 03 <80> 3c 02 00 75 32 48 8b 7b 48 e8 6f a4 13 00 85 c0 74 d3 48 b8 
----------------
Code disassembly (best guess):
   0:	b6 04                	mov    $0x4,%dh
   2:	02 84 c0 74 04 3c 03 	add    0x33c0474(%rax,%rax,8),%al
   9:	7e 51                	jle    0x5c
   b:	8b 03                	mov    (%rbx),%eax
   d:	85 c0                	test   %eax,%eax
   f:	75 05                	jne    0x16
  11:	5b                   	pop    %rbx
  12:	31 c0                	xor    %eax,%eax
  14:	5d                   	pop    %rbp
  15:	c3                   	retq
  16:	48 8d 6b 48          	lea    0x48(%rbx),%rbp
  1a:	48 b8 00 00 00 00 00 	movabs $0xdffffc0000000000,%rax
  21:	fc ff df
  24:	48 89 ea             	mov    %rbp,%rdx
  27:	48 c1 ea 03          	shr    $0x3,%rdx
* 2b:	80 3c 02 00          	cmpb   $0x0,(%rdx,%rax,1) <-- trapping instruction
  2f:	75 32                	jne    0x63
  31:	48 8b 7b 48          	mov    0x48(%rbx),%rdi
  35:	e8 6f a4 13 00       	callq  0x13a4a9
  3a:	85 c0                	test   %eax,%eax
  3c:	74 d3                	je     0x11
  3e:	48                   	rex.W
  3f:	b8                   	.byte 0xb8

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