syzbot


BUG: workqueue leaked lock or atomic in destroy_list_workfn

Status: fixed on 2024/06/28 13:38
Bug presence: origin:lts
[Documentation on labels]
Reported-by: syzbot+044d3d8649c647759741@syzkaller.appspotmail.com
Fix commit: 4b349c55bbd3 bpf: Do cleanup in bpf_bprintf_cleanup only when needed
First crash: 228d, last: 183d
Fix bisection: fixed by (bisect log) :
commit 4b349c55bbd33c8918dbac13876d6842af571505
Author: Jiri Olsa <jolsa@kernel.org>
Date: Sat Feb 17 12:13:20 2024 +0000

  bpf: Do cleanup in bpf_bprintf_cleanup only when needed

  
Bug presence (2)
Date Name Commit Repro Result
2024/04/07 lts (merge base) 6139f2a02fe0 C [report] BUG: scheduling while atomic in exit_to_user_mode_loop
2024/04/07 upstream (ToT) f2f80ac80987 C Didn't crash
Last patch testing requests (2)
Created Duration User Patch Repo Result
2024/06/04 21:15 22m retest repro android13-5.15-lts OK log
2024/04/21 07:27 8m retest repro android13-5.15-lts report log

Sample crash report:
BUG: workqueue leaked lock or atomic: kworker/0:1/0x00000001/20
     last function: destroy_list_workfn
CPU: 0 PID: 20 Comm: kworker/0:1 Not tainted 5.15.148-syzkaller-00718-g993bed180178 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: events destroy_list_workfn
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x17 lib/dump_stack.c:113
 process_one_work+0x8d8/0xc10 kernel/workqueue.c:2340
 worker_thread+0xad5/0x12a0 kernel/workqueue.c:2472
 kthread+0x421/0x510 kernel/kthread.c:337
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
 </TASK>
BUG: workqueue leaked lock or atomic: kworker/0:1/0x00000001/20
     last function: process_srcu
CPU: 0 PID: 20 Comm: kworker/0:1 Not tainted 5.15.148-syzkaller-00718-g993bed180178 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: rcu_gp process_srcu
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x17 lib/dump_stack.c:113
 process_one_work+0x8d8/0xc10 kernel/workqueue.c:2340
 worker_thread+0xad5/0x12a0 kernel/workqueue.c:2472
 kthread+0x421/0x510 kernel/kthread.c:337
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
 </TASK>
BUG: workqueue leaked lock or atomic: kworker/0:1/0x00000001/20
     last function: destroy_list_workfn
CPU: 0 PID: 20 Comm: kworker/0:1 Not tainted 5.15.148-syzkaller-00718-g993bed180178 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: events destroy_list_workfn
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x17 lib/dump_stack.c:113
 process_one_work+0x8d8/0xc10 kernel/workqueue.c:2340
 worker_thread+0xad5/0x12a0 kernel/workqueue.c:2472
 kthread+0x421/0x510 kernel/kthread.c:337
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
 </TASK>
BUG: workqueue leaked lock or atomic: kworker/0:1/0x00000001/20
     last function: process_srcu
CPU: 0 PID: 20 Comm: kworker/0:1 Not tainted 5.15.148-syzkaller-00718-g993bed180178 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: rcu_gp process_srcu
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x17 lib/dump_stack.c:113
 process_one_work+0x8d8/0xc10 kernel/workqueue.c:2340
 worker_thread+0xad5/0x12a0 kernel/workqueue.c:2472
 kthread+0x421/0x510 kernel/kthread.c:337
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
 </TASK>
BUG: workqueue leaked lock or atomic: kworker/0:1/0x00000001/20
     last function: srcu_invoke_callbacks
CPU: 0 PID: 20 Comm: kworker/0:1 Not tainted 5.15.148-syzkaller-00718-g993bed180178 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: rcu_gp srcu_invoke_callbacks
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x17 lib/dump_stack.c:113
 process_one_work+0x8d8/0xc10 kernel/workqueue.c:2340
 worker_thread+0xad5/0x12a0 kernel/workqueue.c:2472
 kthread+0x421/0x510 kernel/kthread.c:337
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
 </TASK>
BUG: workqueue leaked lock or atomic: kworker/0:1/0x00000001/20
     last function: psi_avgs_work
CPU: 0 PID: 20 Comm: kworker/0:1 Not tainted 5.15.148-syzkaller-00718-g993bed180178 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: events psi_avgs_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/0x17 lib/dump_stack.c:113
 process_one_work+0x8d8/0xc10 kernel/workqueue.c:2340
 worker_thread+0xad5/0x12a0 kernel/workqueue.c:2472
 kthread+0x421/0x510 kernel/kthread.c:337
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
 </TASK>
BUG: workqueue leaked lock or atomic: kworker/0:1/0x00000001/20
     last function: vmstat_update
CPU: 0 PID: 20 Comm: kworker/0:1 Not tainted 5.15.148-syzkaller-00718-g993bed180178 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: mm_percpu_wq vmstat_update
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x17 lib/dump_stack.c:113
 process_one_work+0x8d8/0xc10 kernel/workqueue.c:2340
 worker_thread+0xad5/0x12a0 kernel/workqueue.c:2472
 kthread+0x421/0x510 kernel/kthread.c:337
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
 </TASK>
BUG: workqueue leaked lock or atomic: kworker/0:1/0x00000001/20
     last function: vmstat_shepherd
CPU: 0 PID: 20 Comm: kworker/0:1 Not tainted 5.15.148-syzkaller-00718-g993bed180178 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue: events vmstat_shepherd
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x17 lib/dump_stack.c:113
 process_one_work+0x8d8/0xc10 kernel/workqueue.c:2340
 worker_thread+0xad5/0x12a0 kernel/workqueue.c:2472
 kthread+0x421/0x510 kernel/kthread.c:337
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
 </TASK>
BUG: scheduling while atomic: kworker/0:1/20/0x00000002
Modules linked in:
Preemption disabled at:
[<ffffffff81a279ee>] free_percpu+0x9e/0x1090 mm/percpu.c:2279
CPU: 0 PID: 20 Comm: kworker/0:1 Not tainted 5.15.148-syzkaller-00718-g993bed180178 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/27/2024
Workqueue:  0x0 (events)
Call Trace:
 <TASK>
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x151/0x1b7 lib/dump_stack.c:106
 dump_stack+0x15/0x17 lib/dump_stack.c:113
 __schedule_bug+0x195/0x260 kernel/sched/core.c:5707
 schedule_debug kernel/sched/core.c:5734 [inline]
 __schedule+0xd19/0x1590 kernel/sched/core.c:6402
 schedule+0x11f/0x1e0 kernel/sched/core.c:6595
 worker_thread+0xf7f/0x12a0 kernel/workqueue.c:2493
 kthread+0x421/0x510 kernel/kthread.c:337
 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:298
 </TASK>

Crashes (2):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2024/04/07 06:33 android13-5.15-lts 993bed180178 ca620dd8 .config console log report syz C [disk image] [vmlinux] [kernel image] ci2-android-5-15-perf BUG: workqueue leaked lock or atomic in destroy_list_workfn
2024/05/21 21:02 android13-5.15-lts 5d96939590c0 4c0d3ee3 .config console log report syz C [disk image] [vmlinux] [kernel image] ci2-android-5-15 BUG: workqueue leaked lock or atomic in destroy_list_workfn
* Struck through repros no longer work on HEAD.