syzbot


BUG: workqueue leaked lock or atomic in drain_vmap_area_work

Status: premoderation: reported on 2024/04/04 12:36
Reported-by: syzbot+8de76a10fb028681bf85@syzkaller.appspotmail.com
First crash: 80d, last: 80d

Sample crash report:
BUG: workqueue leaked lock or atomic: kworker/1:2/0x00000001/59
     last function: drain_vmap_area_work
CPU: 1 PID: 59 Comm: kworker/1:2 Not tainted 6.1.75-syzkaller-00120-gebcdb9dc211f #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: events drain_vmap_area_work
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x1b lib/dump_stack.c:113
 process_one_work+0x94e/0xcb0 kernel/workqueue.c:2314
 worker_thread+0xa60/0x1260 kernel/workqueue.c:2446
 kthread+0x26d/0x300 kernel/kthread.c:386
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:306
 </TASK>
BUG: workqueue leaked lock or atomic: kworker/1:2/0x00000001/59
     last function: addrconf_dad_work
CPU: 1 PID: 59 Comm: kworker/1:2 Not tainted 6.1.75-syzkaller-00120-gebcdb9dc211f #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: ipv6_addrconf addrconf_dad_work
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x1b lib/dump_stack.c:113
 process_one_work+0x94e/0xcb0 kernel/workqueue.c:2314
 worker_thread+0xa60/0x1260 kernel/workqueue.c:2446
 kthread+0x26d/0x300 kernel/kthread.c:386
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:306
 </TASK>
BUG: workqueue leaked lock or atomic: kworker/1:2/0x00000001/59
     last function: wg_packet_tx_worker
CPU: 1 PID: 59 Comm: kworker/1:2 Not tainted 6.1.75-syzkaller-00120-gebcdb9dc211f #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: wg-crypt-wg0 wg_packet_tx_worker
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x1b lib/dump_stack.c:113
 process_one_work+0x94e/0xcb0 kernel/workqueue.c:2314
 worker_thread+0xa60/0x1260 kernel/workqueue.c:2446
 kthread+0x26d/0x300 kernel/kthread.c:386
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:306
 </TASK>
BUG: workqueue leaked lock or atomic: kworker/1:2/0x00000001/59
     last function: destroy_super_work
CPU: 1 PID: 59 Comm: kworker/1:2 Not tainted 6.1.75-syzkaller-00120-gebcdb9dc211f #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: events destroy_super_work
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x1b lib/dump_stack.c:113
 process_one_work+0x94e/0xcb0 kernel/workqueue.c:2314
 worker_thread+0xa60/0x1260 kernel/workqueue.c:2446
 kthread+0x26d/0x300 kernel/kthread.c:386
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:306
 </TASK>
BUG: scheduling while atomic: kworker/1:2/59/0x00000002
Modules linked in:
Preemption disabled at:
[<ffffffff81b665a1>] spin_lock include/linux/spinlock.h:350 [inline]
[<ffffffff81b665a1>] __purge_vmap_area_lazy+0x2a1/0x1680 mm/vmalloc.c:1763
CPU: 1 PID: 59 Comm: kworker/1:2 Not tainted 6.1.75-syzkaller-00120-gebcdb9dc211f #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: events bpf_prog_free_deferred
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x1b lib/dump_stack.c:113
 __schedule_bug+0x195/0x260 kernel/sched/core.c:5960
 schedule_debug kernel/sched/core.c:5987 [inline]
 __schedule+0xcf7/0x1550 kernel/sched/core.c:6622
 schedule+0xc3/0x180 kernel/sched/core.c:6805
 schedule_preempt_disabled+0x13/0x20 kernel/sched/core.c:6864
 mutex_optimistic_spin kernel/locking/mutex.c:529 [inline]
 __mutex_lock_common kernel/locking/mutex.c:629 [inline]
 __mutex_lock+0x5b6/0x1ca0 kernel/locking/mutex.c:774
 __mutex_lock_slowpath+0xe/0x10 kernel/locking/mutex.c:1063
 mutex_lock+0x130/0x1e0 kernel/locking/mutex.c:295
 text_poke_set+0xac/0x170 arch/x86/kernel/alternative.c:1308
 bpf_arch_text_invalidate+0x22/0x40 arch/x86/net/bpf_jit_comp.c:233
 bpf_prog_pack_free+0x14b/0x3d0 kernel/bpf/core.c:943
 bpf_jit_binary_pack_free+0x38/0x80 kernel/bpf/core.c:1143
 bpf_jit_free+0x132/0x1e0 arch/x86/net/bpf_jit_comp.c:2538
 bpf_prog_free_deferred+0x63e/0x750 kernel/bpf/core.c:2571
 process_one_work+0x73d/0xcb0 kernel/workqueue.c:2299
 worker_thread+0xa60/0x1260 kernel/workqueue.c:2446
 kthread+0x26d/0x300 kernel/kthread.c:386
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:306
 </TASK>
usb 4-1: new high-speed USB device number 30 using dummy_hcd
usb 4-1: Using ep0 maxpacket: 32
usb 4-1: config 0 interface 0 altsetting 0 endpoint 0x81 has an invalid bInterval 255, changing to 11
usb 4-1: config 0 interface 0 altsetting 0 endpoint 0x81 has invalid maxpacket 59391, setting to 1024
usb 4-1: New USB device found, idVendor=046d, idProduct=c314, bcdDevice= 0.40
usb 4-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
usb 4-1: config 0 descriptor??
hub 4-1:0.0: USB hub found
hub 4-1:0.0: 2 ports detected
hub 4-1:0.0: hub_ext_port_status failed (err = 0)

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/04/04 12:35 android14-6.1 ebcdb9dc211f 0ee3535e .config console log report info [disk image] [vmlinux] [kernel image] ci2-android-6-1 BUG: workqueue leaked lock or atomic in drain_vmap_area_work
* Struck through repros no longer work on HEAD.