syzbot


BUG: soft lockup in br_ioctl_stub

Status: premoderation: reported on 2024/04/24 22:01
Reported-by: syzbot+4b5642e71eeefb879f41@syzkaller.appspotmail.com
First crash: 81d, last: 10d

Sample crash report:
watchdog: BUG: soft lockup - CPU#1 stuck for 225s! [syz.3.1323:3790]
Modules linked in:
CPU: 1 PID: 3790 Comm: syz.3.1323 Not tainted 5.15.150-syzkaller-00330-g9044d25b8ff5 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/07/2024
RIP: 0010:pv_wait_head_or_lock kernel/locking/qspinlock_paravirt.h:434 [inline]
RIP: 0010:__pv_queued_spin_lock_slowpath+0x5ba/0xc40 kernel/locking/qspinlock.c:508
Code: 00 00 49 89 dc c6 03 00 48 8b 44 24 10 0f b6 04 10 84 c0 0f 85 48 01 00 00 48 8b 44 24 08 c6 00 01 bb 00 80 ff ff eb 06 f3 90 <ff> c3 74 5e 41 0f b6 44 15 00 84 c0 75 36 41 80 3f 00 75 ea 4c 89
RSP: 0018:ffffc90000b25ec0 EFLAGS: 00000206
RAX: 0000000000000000 RBX: 00000000ffffc625 RCX: ffffffff8154fbbf
RDX: dffffc0000000000 RSI: 0000000000000003 RDI: ffff888119b05ad8
RBP: ffffc90000b25fb0 R08: dffffc0000000000 R09: ffffed1023360b5c
R10: 0000000000000000 R11: dffffc0000000001 R12: ffff8881f7138ad4
R13: 1ffff11023360b5b R14: 1ffff1103ee20001 R15: ffff888119b05ad8
FS:  00007f8c7fe806c0(0000) GS:ffff8881f7100000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000000000 CR3: 00000001009b1000 CR4: 00000000003506a0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000600
Call Trace:
 <IRQ>
 </IRQ>
 <TASK>
 pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:585 [inline]
 queued_spin_lock_slowpath arch/x86/include/asm/qspinlock.h:51 [inline]
 queued_spin_lock include/asm-generic/qspinlock.h:85 [inline]
 do_raw_spin_lock include/linux/spinlock.h:187 [inline]
 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:136 [inline]
 _raw_spin_lock_bh+0x139/0x1b0 kernel/locking/spinlock.c:178
 sock_hash_delete_elem+0xb1/0x2f0 net/core/sock_map.c:937
 bpf_prog_2c29ac5cdc6b1842+0x3a/0xa5c
 bpf_dispatcher_nop_func include/linux/bpf.h:785 [inline]
 __bpf_prog_run include/linux/filter.h:625 [inline]
 bpf_prog_run include/linux/filter.h:632 [inline]
 __bpf_trace_run kernel/trace/bpf_trace.c:1880 [inline]
 bpf_trace_run4+0x13f/0x270 kernel/trace/bpf_trace.c:1919
 __bpf_trace_mm_page_alloc+0xbf/0xf0 include/trace/events/kmem.h:201
 trace_mm_page_alloc include/trace/events/kmem.h:201 [inline]
 __alloc_pages+0x3cb/0x8f0 mm/page_alloc.c:5798
 __alloc_pages_node include/linux/gfp.h:591 [inline]
 alloc_pages_node include/linux/gfp.h:605 [inline]
 alloc_pages include/linux/gfp.h:618 [inline]
 __stack_depot_save+0x38d/0x470 lib/stackdepot.c:326
 stack_depot_save+0xe/0x10 lib/stackdepot.c:383
 save_stack+0x104/0x1e0 mm/page_owner.c:140
 __set_page_owner+0x28/0x2e0 mm/page_owner.c:200
 set_page_owner include/linux/page_owner.h:33 [inline]
 post_alloc_hook+0x1a3/0x1b0 mm/page_alloc.c:2604
 prep_new_page+0x1b/0x110 mm/page_alloc.c:2610
 get_page_from_freelist+0x3550/0x35d0 mm/page_alloc.c:4484
 __alloc_pages+0x27e/0x8f0 mm/page_alloc.c:5776
 __alloc_pages_node include/linux/gfp.h:591 [inline]
 alloc_pages_node include/linux/gfp.h:605 [inline]
 alloc_pages include/linux/gfp.h:618 [inline]
 __stack_depot_save+0x38d/0x470 lib/stackdepot.c:326
 kasan_save_stack mm/kasan/common.c:39 [inline]
 kasan_set_track+0x5d/0x70 mm/kasan/common.c:45
 kasan_set_free_info+0x23/0x40 mm/kasan/generic.c:370
 ____kasan_slab_free+0x126/0x160 mm/kasan/common.c:365
 __kasan_slab_free+0x11/0x20 mm/kasan/common.c:373
 kasan_slab_free include/linux/kasan.h:193 [inline]
 slab_free_hook mm/slub.c:1723 [inline]
 slab_free_freelist_hook+0xbd/0x190 mm/slub.c:1749
 slab_free mm/slub.c:3519 [inline]
 kfree+0xc8/0x220 mm/slub.c:4579
 sk_psock_free_link include/linux/skmsg.h:420 [inline]
 sock_map_del_link net/core/sock_map.c:160 [inline]
 sock_map_unref+0x352/0x4d0 net/core/sock_map.c:182
 sock_hash_delete_elem+0x274/0x2f0 net/core/sock_map.c:941
 bpf_prog_2c29ac5cdc6b1842+0x3a/0xa5c
 bpf_dispatcher_nop_func include/linux/bpf.h:785 [inline]
 __bpf_prog_run include/linux/filter.h:625 [inline]
 bpf_prog_run include/linux/filter.h:632 [inline]
 __bpf_trace_run kernel/trace/bpf_trace.c:1880 [inline]
 bpf_trace_run4+0x13f/0x270 kernel/trace/bpf_trace.c:1919
 __bpf_trace_mm_page_alloc+0xbf/0xf0 include/trace/events/kmem.h:201
 trace_mm_page_alloc include/trace/events/kmem.h:201 [inline]
 __alloc_pages+0x3cb/0x8f0 mm/page_alloc.c:5798
 __alloc_pages_node include/linux/gfp.h:591 [inline]
 alloc_pages_node include/linux/gfp.h:605 [inline]
 alloc_pages include/linux/gfp.h:618 [inline]
 __stack_depot_save+0x38d/0x470 lib/stackdepot.c:326
 kasan_save_stack mm/kasan/common.c:39 [inline]
 kasan_set_track mm/kasan/common.c:45 [inline]
 set_alloc_info mm/kasan/common.c:433 [inline]
 __kasan_slab_alloc+0xc3/0xe0 mm/kasan/common.c:466
 kasan_slab_alloc include/linux/kasan.h:217 [inline]
 slab_post_alloc_hook+0x53/0x2c0 mm/slab.h:550
 slab_alloc_node mm/slub.c:3240 [inline]
 slab_alloc mm/slub.c:3248 [inline]
 kmem_cache_alloc+0xf5/0x200 mm/slub.c:3253
 kmem_cache_zalloc include/linux/slab.h:723 [inline]
 __kernfs_new_node+0xdb/0x700 fs/kernfs/dir.c:593
 kernfs_new_node+0x130/0x230 fs/kernfs/dir.c:669
 __kernfs_create_file+0x4a/0x270 fs/kernfs/file.c:987
 sysfs_add_file_mode_ns+0x273/0x320 fs/sysfs/file.c:317
 create_files fs/sysfs/group.c:64 [inline]
 internal_create_group+0x573/0xf00 fs/sysfs/group.c:149
 internal_create_groups fs/sysfs/group.c:189 [inline]
 sysfs_create_groups+0x5b/0x130 fs/sysfs/group.c:215
 create_dir lib/kobject.c:100 [inline]
 kobject_add_internal+0x8ce/0xd90 lib/kobject.c:263
 kobject_add_varg lib/kobject.c:398 [inline]
 kobject_init_and_add+0x120/0x190 lib/kobject.c:481
 netdev_queue_add_kobject net/core/net-sysfs.c:1666 [inline]
 netdev_queue_update_kobjects+0x185/0x400 net/core/net-sysfs.c:1711
 register_queue_kobjects net/core/net-sysfs.c:1772 [inline]
 netdev_register_kobject+0x270/0x320 net/core/net-sysfs.c:2018
 register_netdevice+0xde9/0x1390 net/core/dev.c:10361
 br_add_bridge+0xa2/0xf0 net/bridge/br_if.c:460
 br_ioctl_stub+0x397/0x8d0
 br_ioctl_call net/socket.c:1114 [inline]
 sock_ioctl+0x291/0x740 net/socket.c:1211
 vfs_ioctl fs/ioctl.c:51 [inline]
 __do_sys_ioctl fs/ioctl.c:874 [inline]
 __se_sys_ioctl+0x114/0x190 fs/ioctl.c:860
 __x64_sys_ioctl+0x7b/0x90 fs/ioctl.c:860
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x3d/0xb0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x61/0xcb
RIP: 0033:0x7f8c80bfebd9
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 a8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007f8c7fe80048 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
RAX: ffffffffffffffda RBX: 00007f8c80d8cf60 RCX: 00007f8c80bfebd9
RDX: 0000000020000080 RSI: 00000000000089a0 RDI: 0000000000000009
RBP: 00007f8c80c6daa1 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 000000000000000b R14: 00007f8c80d8cf60 R15: 00007ffd11965a38
 </TASK>
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 3793 Comm: syz.2.1324 Not tainted 5.15.150-syzkaller-00330-g9044d25b8ff5 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 06/07/2024
RIP: 0010:native_safe_halt arch/x86/include/asm/irqflags.h:51 [inline]
RIP: 0010:arch_safe_halt arch/x86/include/asm/irqflags.h:89 [inline]
RIP: 0010:kvm_wait+0x147/0x180 arch/x86/kernel/kvm.c:918
Code: 4c 89 e8 48 c1 e8 03 42 0f b6 04 20 84 c0 44 8b 74 24 1c 75 34 41 0f b6 45 00 44 38 f0 75 10 66 90 0f 00 2d 4b 02 f3 03 fb f4 <e9> 24 ff ff ff fb e9 1e ff ff ff 44 89 e9 80 e1 07 38 c1 7c a3 4c
RSP: 0018:ffffc90000a572e0 EFLAGS: 00000246
RAX: 0000000000000001 RBX: 1ffff9200014ae60 RCX: 1ffffffff0d1aa9c
RDX: 0000000000000001 RSI: 0000000000000001 RDI: ffff8881f7038ad4
RBP: ffffc90000a57390 R08: dffffc0000000000 R09: ffffed103ee0715b
R10: 0000000000000000 R11: dffffc0000000001 R12: dffffc0000000000
R13: ffff8881f7038ad4 R14: 0000000000000001 R15: 1ffff9200014ae64
FS:  0000000000000000(0000) GS:ffff8881f7000000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000020351000 CR3: 0000000123602000 CR4: 00000000003506b0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000600
Call Trace:
 <NMI>
 </NMI>
 <TASK>
 pv_wait arch/x86/include/asm/paravirt.h:597 [inline]
 pv_wait_node kernel/locking/qspinlock_paravirt.h:325 [inline]
 __pv_queued_spin_lock_slowpath+0x41b/0xc40 kernel/locking/qspinlock.c:473
 pv_queued_spin_lock_slowpath arch/x86/include/asm/paravirt.h:585 [inline]
 queued_spin_lock_slowpath arch/x86/include/asm/qspinlock.h:51 [inline]
 queued_spin_lock include/asm-generic/qspinlock.h:85 [inline]
 do_raw_spin_lock include/linux/spinlock.h:187 [inline]
 __raw_spin_lock_bh include/linux/spinlock_api_smp.h:136 [inline]
 _raw_spin_lock_bh+0x139/0x1b0 kernel/locking/spinlock.c:178
 sock_hash_delete_elem+0xb1/0x2f0 net/core/sock_map.c:937
 bpf_prog_2c29ac5cdc6b1842+0x3a/0xa5c
 bpf_dispatcher_nop_func include/linux/bpf.h:785 [inline]
 __bpf_prog_run include/linux/filter.h:625 [inline]
 bpf_prog_run include/linux/filter.h:632 [inline]
 __bpf_trace_run kernel/trace/bpf_trace.c:1880 [inline]
 bpf_trace_run4+0x13f/0x270 kernel/trace/bpf_trace.c:1919
 __bpf_trace_mm_page_alloc+0xbf/0xf0 include/trace/events/kmem.h:201
 trace_mm_page_alloc include/trace/events/kmem.h:201 [inline]
 __alloc_pages+0x3cb/0x8f0 mm/page_alloc.c:5798
 __alloc_pages_node include/linux/gfp.h:591 [inline]
 alloc_pages_node include/linux/gfp.h:605 [inline]
 alloc_pages include/linux/gfp.h:618 [inline]
 __get_free_pages+0x10/0x30 mm/page_alloc.c:5813
 tlb_next_batch mm/mmu_gather.c:29 [inline]
 __tlb_remove_page_size+0x178/0x300 mm/mmu_gather.c:83
 __tlb_remove_page include/asm-generic/tlb.h:444 [inline]
 zap_pte_range mm/memory.c:1437 [inline]
 zap_pmd_range mm/memory.c:1559 [inline]
 zap_pud_range mm/memory.c:1588 [inline]
 zap_p4d_range mm/memory.c:1609 [inline]
 unmap_page_range+0x1226/0x1ed0 mm/memory.c:1630
 unmap_single_vma mm/memory.c:1675 [inline]
 unmap_vmas+0x389/0x560 mm/memory.c:1707
 exit_mmap+0x3e4/0x940 mm/mmap.c:3215
 __mmput+0x95/0x310 kernel/fork.c:1179
 mmput+0x5b/0x170 kernel/fork.c:1202
 exit_mm kernel/exit.c:552 [inline]
 do_exit+0xb9c/0x2ca0 kernel/exit.c:865
 __do_sys_exit kernel/exit.c:969 [inline]
 __se_sys_exit kernel/exit.c:967 [inline]
 __x64_sys_exit+0x40/0x40 kernel/exit.c:967
 do_syscall_x64 arch/x86/entry/common.c:50 [inline]
 do_syscall_64+0x3d/0xb0 arch/x86/entry/common.c:80
 entry_SYSCALL_64_after_hwframe+0x61/0xcb
RIP: 0033:0x7ff128b84bd9
Code: Unable to access opcode bytes at RIP 0x7ff128b84baf.
RSP: 002b:00007ff127e05ff8 EFLAGS: 00000246 ORIG_RAX: 000000000000003c
RAX: ffffffffffffffda RBX: 00007ff128d12f60 RCX: 00007ff128b84bd9
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 00007ff128bf3aa1 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 000000000000000b R14: 00007ff128d12f60 R15: 00007ffe7249f418
 </TASK>

Crashes (4):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/07/04 18:01 android13-5.15-lts 9044d25b8ff5 3f2748a3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-15-perf BUG: soft lockup in br_ioctl_stub
2024/05/05 21:08 android13-5.15-lts 5d96939590c0 610f2a54 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-15-perf BUG: soft lockup in br_ioctl_stub
2024/04/27 11:01 android13-5.15-lts 5d96939590c0 07b455f9 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-15-perf BUG: soft lockup in br_ioctl_stub
2024/04/24 22:00 android13-5.15-lts ad06eaf051cd 8bdc0f22 .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-5-15-perf BUG: soft lockup in br_ioctl_stub
* Struck through repros no longer work on HEAD.