[v6.1] INFO: rcu detected stall in bpf_prog_release

0 views
Skip to first unread message

syzbot

unread,
Apr 17, 2026, 9:45:35 PM (3 days ago) Apr 17
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 8e8fc038cad5 Linux 6.1.168
git tree: linux-6.1.y
console output: https://syzkaller.appspot.com/x/log.txt?x=115324ce580000
kernel config: https://syzkaller.appspot.com/x/.config?x=f0605c5af04d7603
dashboard link: https://syzkaller.appspot.com/bug?extid=9051d7f7dcc166a7dca2
compiler: Debian clang version 21.1.8 (++20251221033036+2078da43e25a-1~exp1~20251221153213.50), Debian LLD 21.1.8
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=11c54702580000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/6dfc76304daa/disk-8e8fc038.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/cc3f335da424/vmlinux-8e8fc038.xz
kernel image: https://storage.googleapis.com/syzbot-assets/52204dcd4a1b/bzImage-8e8fc038.xz

IMPORTANT: if you fix the issue, please add the following tag to the commit:
Reported-by: syzbot+9051d7...@syzkaller.appspotmail.com

rcu: INFO: rcu_preempt detected expedited stalls on CPUs/tasks: { 0-.... } 2656 jiffies s: 20549 root: 0x1/.
rcu: blocking rcu_node structures (internal RCU debug):
Sending NMI from CPU 1 to CPUs 0:
NMI backtrace for cpu 0
CPU: 0 PID: 9142 Comm: syz.3.4434 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 03/18/2026
RIP: 0010:get_current arch/x86/include/asm/current.h:15 [inline]
RIP: 0010:write_comp_data kernel/kcov.c:244 [inline]
RIP: 0010:__sanitizer_cov_trace_const_cmp8+0x4/0x80 kernel/kcov.c:320
Code: 77 22 89 ff 89 f6 49 ff c0 4c 89 01 48 c7 44 11 08 05 00 00 00 48 89 7c 11 10 48 89 74 11 18 48 89 44 11 20 c3 90 48 8b 04 24 <65> 48 8b 0d 04 f6 7f 7e 65 8b 15 05 f6 7f 7e 81 e2 00 01 ff 00 74
RSP: 0018:ffffc90000007198 EFLAGS: 00000046
RAX: ffffffff81a4fbc2 RBX: ffffc90000007340 RCX: ffff88802dab9dc0
RDX: 0000000000000100 RSI: 0000000000000400 RDI: 0000000000000000
RBP: ffffc90000007290 R08: ffffc90000007317 R09: ffffc900000072e0
R10: dffffc0000000000 R11: fffff52000000e63 R12: dffffc0000000000
R13: 0000000000100000 R14: 0000000000100500 R15: ffffc90000007580
FS: 000055555e728500(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000020000000cf3d CR3: 0000000069ec5000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<IRQ>
perf_prepare_sample+0x452/0x2020 kernel/events/core.c:7552
__perf_event_output kernel/events/core.c:7730 [inline]
perf_event_output_forward+0x197/0x2f0 kernel/events/core.c:7750
__perf_event_overflow+0x448/0x610 kernel/events/core.c:9496
perf_swevent_overflow kernel/events/core.c:9579 [inline]
perf_swevent_event+0x315/0x570 kernel/events/core.c:9630
perf_tp_event+0x3e7/0xc30 kernel/events/core.c:10064
perf_trace_run_bpf_submit+0xf3/0x1c0 kernel/events/core.c:10032
perf_trace_preemptirq_template+0x268/0x320 include/trace/events/preemptirq.h:14
trace_irq_enable_rcuidle+0xd3/0x140 include/trace/events/preemptirq.h:40
trace_hardirqs_on+0x24/0x40 kernel/trace/trace_preemptirq.c:44
asm_sysvec_irq_work+0x16/0x20 arch/x86/include/asm/idtentry.h:728
RIP: 0010:rcu_read_unlock_special+0x7f/0x510 kernel/rcu/tree_plugin.h:685
Code: eb 03 48 b8 f1 f1 f1 f1 f8 f2 f2 f2 4a 89 04 2b 42 c7 44 2b 08 f8 f3 f3 f3 65 44 8b 35 d2 33 95 7e 41 f7 c6 00 00 f0 00 74 40 <48> c7 44 24 40 0e 36 e0 45 4a c7 04 2b 00 00 00 00 42 c7 44 2b 08
RSP: 0018:ffffc900000079a0 EFLAGS: 00000206
RAX: 9783f1a437d1e300 RBX: 1ffff92000000f3c RCX: 9783f1a437d1e300
RDX: dffffc0000000000 RSI: ffffffff8a8c10a0 RDI: ffffffff8adf11a0
RBP: ffffc90000007a98 R08: ffff8880b8e3580b R09: 1ffff110171c6b01
R10: dffffc0000000000 R11: ffffed10171c6b02 R12: 0000000000000246
R13: dffffc0000000000 R14: ffff8880b8e3b900 R15: 0000000000000001
__rcu_read_unlock+0x78/0xd0 kernel/rcu/tree_plugin.h:426
rcu_read_unlock include/linux/rcupdate.h:823 [inline]
percpu_ref_put_many include/linux/percpu-refcount.h:337 [inline]
percpu_ref_put+0xc8/0x100 include/linux/percpu-refcount.h:351
obj_cgroup_put include/linux/memcontrol.h:795 [inline]
memcg_slab_free_hook+0x16d/0x1f0 mm/slab.h:572
slab_free mm/slub.c:3682 [inline]
kmem_cache_free+0xe0/0x290 mm/slub.c:3709
rcu_do_batch kernel/rcu/tree.c:2297 [inline]
rcu_core+0xa99/0x1740 kernel/rcu/tree.c:2557
handle_softirqs+0x2a1/0x930 kernel/softirq.c:596
__do_softirq kernel/softirq.c:630 [inline]
invoke_softirq kernel/softirq.c:470 [inline]
__irq_exit_rcu+0x13b/0x230 kernel/softirq.c:679
irq_exit_rcu+0x5/0x20 kernel/softirq.c:691
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1118 [inline]
sysvec_apic_timer_interrupt+0xa0/0xc0 arch/x86/kernel/apic/apic.c:1118
</IRQ>
<TASK>
asm_sysvec_apic_timer_interrupt+0x16/0x20 arch/x86/include/asm/idtentry.h:691
RIP: 0010:__raw_spin_unlock_irqrestore include/linux/spinlock_api_smp.h:152 [inline]
RIP: 0010:_raw_spin_unlock_irqrestore+0xbc/0x120 kernel/locking/spinlock.c:194
Code: c7 44 24 20 00 00 00 00 9c 8f 44 24 20 f7 44 24 20 00 02 00 00 41 c6 04 07 f8 75 4b f7 c3 00 02 00 00 74 01 fb bf 01 00 00 00 <e8> 2f dd 20 f7 65 8b 05 80 60 ca 75 85 c0 74 3c 48 c7 04 24 0e 36
RSP: 0018:ffffc90003027a20 EFLAGS: 00000206
RAX: dffffc0000000004 RBX: 0000000000000a02 RCX: 9783f1a437d1e300
RDX: dffffc0000000000 RSI: ffffffff8a8c10a0 RDI: 0000000000000001
RBP: ffffc90003027ab0 R08: ffff8880b8e3580b R09: 1ffff110171c6b01
R10: dffffc0000000000 R11: ffffed10171c6b02 R12: dffffc0000000000
R13: 1ffff92000604f68 R14: ffffffff96ee0b50 R15: 1ffff92000604f44
debug_rcu_head_queue kernel/rcu/rcu.h:191 [inline]
call_rcu+0xbb/0x990 kernel/rcu/tree.c:2834
bpf_prog_put_deferred+0x2e0/0x3c0 kernel/bpf/syscall.c:2102
__bpf_prog_put kernel/bpf/syscall.c:2114 [inline]
bpf_prog_put+0x25f/0x270 kernel/bpf/syscall.c:2121
bpf_prog_release+0x37/0x40 kernel/bpf/syscall.c:2129
__fput+0x22c/0x920 fs/file_table.c:320
task_work_run+0x1d0/0x260 kernel/task_work.c:203
resume_user_mode_work include/linux/resume_user_mode.h:49 [inline]
exit_to_user_mode_loop+0xe6/0x110 kernel/entry/common.c:177
exit_to_user_mode_prepare+0xee/0x180 kernel/entry/common.c:210
__syscall_exit_to_user_mode_work kernel/entry/common.c:292 [inline]
syscall_exit_to_user_mode+0x16/0x40 kernel/entry/common.c:303
do_syscall_64+0x58/0xa0 arch/x86/entry/common.c:82
entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7f1d69d9c819
Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 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 e8 ff ff ff f7 d8 64 89 01 48
RSP: 002b:00007ffdc2411818 EFLAGS: 00000246 ORIG_RAX: 00000000000001b4
RAX: 0000000000000000 RBX: 00007ffdc2411900 RCX: 00007f1d69d9c819
RDX: 0000000000000000 RSI: 000000000000001e RDI: 0000000000000003
RBP: 000000000003f4b9 R08: 0000000000000001 R09: 0000000000000000
R10: 0000001b32b20000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007f1d6a015fac R14: 00007f1d6a015fa8 R15: 00007f1d6a015fa0
</TASK>


---
This report is generated by a bot. It may contain errors.
See https://goo.gl/tpsmEJ for more information about syzbot.
syzbot engineers can be reached at syzk...@googlegroups.com.

syzbot will keep track of this issue. See:
https://goo.gl/tpsmEJ#status for how to communicate with syzbot.

If the report is already addressed, let syzbot know by replying with:
#syz fix: exact-commit-title

If you want syzbot to run the reproducer, reply with:
#syz test: git://repo/address.git branch-or-commit-hash
If you attach or paste a git patch, syzbot will apply it before testing.

If you want to overwrite report's subsystems, reply with:
#syz set subsystems: new-subsystem
(See the list of subsystem names on the web dashboard)

If the report is a duplicate of another one, reply with:
#syz dup: exact-subject-of-another-report

If you want to undo deduplication, reply with:
#syz undup
Reply all
Reply to author
Forward
0 new messages