[v6.1] INFO: rcu detected stall in syscall_enter_from_user_mode (3)

3 views
Skip to first unread message

syzbot

unread,
Feb 27, 2025, 8:22:30 AM2/27/25
to syzkaller...@googlegroups.com
Hello,

syzbot found the following issue on:

HEAD commit: 3a8358583626 Linux 6.1.129
git tree: linux-6.1.y
console output: https://syzkaller.appspot.com/x/log.txt?x=119ec064580000
kernel config: https://syzkaller.appspot.com/x/.config?x=d841937c118666c6
dashboard link: https://syzkaller.appspot.com/bug?extid=d27661ce10e475e27efe
compiler: Debian clang version 15.0.6, GNU ld (GNU Binutils for Debian) 2.40
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=12b0403f980000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/2d414d16a3eb/disk-3a835858.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/85c303da6042/vmlinux-3a835858.xz
kernel image: https://storage.googleapis.com/syzbot-assets/857a2039ef6b/bzImage-3a835858.xz

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

rcu: INFO: rcu_preempt detected expedited stalls on CPUs/tasks: { 0-.... } 2632 jiffies s: 10341 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: 7252 Comm: syz.1.2818 Not tainted 6.1.129-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
RIP: 0010:__preempt_count_add kernel/rcu/tree.c:717 [inline]
RIP: 0010:rcu_is_watching+0x0/0xb0 kernel/rcu/tree.c:720
Code: 00 f6 44 24 21 02 0f 84 02 ff ff ff e9 6c ff ff ff 48 c7 c7 20 50 33 8d 4c 89 f6 e8 1a 44 fb 02 e9 2b ff ff ff e8 00 5c 3d 09 <41> 57 41 56 53 65 ff 05 8c e9 8e 7e e8 3f 74 3d 09 89 c3 83 f8 08
RSP: 0018:ffffc90000007210 EFLAGS: 00000002
RAX: 0000000000000100 RBX: 0000000000000001 RCX: ffff88802a810000
RDX: ffff88802a810000 RSI: 0000000000000001 RDI: 0000000000000000
RBP: 0000000000000001 R08: ffffffff813de082 R09: fffffbfff2256c4d
R10: 0000000000000000 R11: dffffc0000000001 R12: 00000000b8e3b8b0
R13: 0000000000000000 R14: ffffffff813dde4f R15: ffff88813fff92e0
FS: 0000555581476500(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00004000000021c0 CR3: 0000000079d00000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<NMI>
</NMI>
<IRQ>
rcu_read_unlock_sched include/linux/rcupdate.h:902 [inline]
pfn_valid include/linux/mmzone.h:1867 [inline]
__virt_addr_valid+0x3bb/0x530 arch/x86/mm/physaddr.c:65
kasan_addr_to_slab+0x9/0x20 mm/kasan/common.c:35
__kasan_record_aux_stack+0x11/0xc0 mm/kasan/generic.c:471
irq_work_queue_on+0x12f/0x290 kernel/irq_work.c:140
rcu_read_unlock_special+0x3c6/0x540 kernel/rcu/tree_plugin.h:675
__rcu_read_unlock+0x92/0x100 kernel/rcu/tree_plugin.h:426
rcu_read_unlock include/linux/rcupdate.h:823 [inline]
__perf_event_output kernel/events/core.c:7717 [inline]
perf_event_output_forward+0x2af/0x330 kernel/events/core.c:7726
__perf_event_overflow+0x45e/0x640 kernel/events/core.c:9472
perf_swevent_overflow kernel/events/core.c:9548 [inline]
perf_swevent_event+0x4c5/0x550 kernel/events/core.c:9586
perf_tp_event+0x35a/0xc80 kernel/events/core.c:10005
perf_trace_run_bpf_submit+0xf7/0x1d0 kernel/events/core.c:9978
perf_trace_preemptirq_template+0x2d1/0x3d0 include/trace/events/preemptirq.h:14
trace_irq_enable_rcuidle+0xd5/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+0x84/0x540 kernel/rcu/tree_plugin.h:682
Code: f1 f1 f1 00 f2 f2 f2 49 89 04 17 66 41 c7 44 17 09 f3 f3 41 c6 44 17 0b f3 65 44 8b 25 6d 1a 8e 7e 41 f7 c4 00 00 f0 00 74 45 <48> c7 44 24 20 0e 36 e0 45 4a c7 04 3a 00 00 00 00 66 42 c7 44 3a
RSP: 0018:ffffc90000007ac0 EFLAGS: 00000206
RAX: 5a2e2767731f6900 RBX: 1ffff92000000f60 RCX: ffffffff973bd103
RDX: dffffc0000000000 RSI: ffffffff8b0c1d40 RDI: ffffffff8b5f6d80
RBP: ffffc90000007ba0 R08: ffffffff81b609ac R09: ffffed10171c6ad6
R10: 0000000000000000 R11: dffffc0000000001 R12: ffffffff8d333500
R13: ffff88802a810458 R14: ffffc90000007b00 R15: 1ffff92000000f5c
__rcu_read_unlock+0x92/0x100 kernel/rcu/tree_plugin.h:426
rcu_read_unlock include/linux/rcupdate.h:823 [inline]
ieee80211_iterate_active_interfaces_atomic+0x153/0x170 net/mac80211/util.c:826
mac80211_hwsim_beacon+0xd0/0x1e0 drivers/net/wireless/mac80211_hwsim.c:2142
__run_hrtimer kernel/time/hrtimer.c:1689 [inline]
__hrtimer_run_queues+0x5e5/0xe50 kernel/time/hrtimer.c:1753
hrtimer_run_softirq+0x196/0x2c0 kernel/time/hrtimer.c:1770
handle_softirqs+0x2ee/0xa40 kernel/softirq.c:578
__do_softirq kernel/softirq.c:612 [inline]
invoke_softirq kernel/softirq.c:452 [inline]
__irq_exit_rcu+0x157/0x240 kernel/softirq.c:661
irq_exit_rcu+0x5/0x20 kernel/softirq.c:673
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:__syscall_enter_from_user_work kernel/entry/common.c:97 [inline]
RIP: 0010:syscall_enter_from_user_mode+0x37/0x230 kernel/entry/common.c:118
Code: 49 89 fe 48 8b 7c 24 30 e8 f6 fa ff ff 0f 1f 44 00 00 0f 1f 44 00 00 e8 f7 70 e0 f6 e8 72 6f e0 f6 fb 65 4c 8b 3d 09 87 51 75 <49> 8b 5f 08 f6 c3 3f 0f 84 ad 00 00 00 f6 c3 20 74 17 4c 89 f7 e8
RSP: 0018:ffffc9000c4bfef8 EFLAGS: 00000282
RAX: 5a2e2767731f6900 RBX: ffffc9000c4bff30 RCX: ffffffff973bd103
RDX: dffffc0000000000 RSI: ffffffff8b0c1d40 RDI: ffffffff8b5f6d80
RBP: ffffc9000c4bff48 R08: ffffffff81b609ac R09: ffffed10171c6ad6
R10: 0000000000000000 R11: dffffc0000000001 R12: 0000000000000000
R13: 00000000000000ca R14: ffffc9000c4bff58 R15: ffff88802a810000
do_syscall_64+0x1e/0xb0 arch/x86/entry/common.c:77
entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7fbff6b8d169
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:00007ffe9c812988 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca
RAX: ffffffffffffffda RBX: 00007fbff6da5fa8 RCX: 00007fbff6b8d169
RDX: 00000000000f4240 RSI: 0000000000000081 RDI: 00007fbff6da5fac
RBP: 0000000000000000 R08: 0000000000000010 R09: 000000059c812c7f
R10: ffffffffffffffff R11: 0000000000000246 R12: 00007fbff6da5fac
R13: 00007fbff6da5fa0 R14: 00000000000000d1 R15: 0000000000000001
</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

syzbot

unread,
Aug 20, 2025, 5:51:28 PM8/20/25
to syzkaller...@googlegroups.com
syzbot has found a reproducer for the following issue on:

HEAD commit: 0bc96de781b4 Linux 6.1.148
git tree: linux-6.1.y
console output: https://syzkaller.appspot.com/x/log.txt?x=157d5442580000
kernel config: https://syzkaller.appspot.com/x/.config?x=5c8a5866886424a8
dashboard link: https://syzkaller.appspot.com/bug?extid=d27661ce10e475e27efe
compiler: Debian clang version 20.1.7 (++20250616065708+6146a88f6049-1~exp1~20250616065826.132), Debian LLD 20.1.7
syz repro: https://syzkaller.appspot.com/x/repro.syz?x=1429f234580000
C reproducer: https://syzkaller.appspot.com/x/repro.c?x=137e37a2580000

Downloadable assets:
disk image: https://storage.googleapis.com/syzbot-assets/4f0b5cbe51c4/disk-0bc96de7.raw.xz
vmlinux: https://storage.googleapis.com/syzbot-assets/4640a0a9e4d9/vmlinux-0bc96de7.xz
kernel image: https://storage.googleapis.com/syzbot-assets/50f32045ec7f/bzImage-0bc96de7.xz

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

rcu: INFO: rcu_preempt detected expedited stalls on CPUs/tasks: { 0-.... } 2654 jiffies s: 5817 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: 10480 Comm: syz.2.2976 Not tainted 6.1.148-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/12/2025
RIP: 0010:lock_acquire+0x218/0x490 kernel/locking/lockdep.c:5666
Code: f6 84 24 81 00 00 00 02 0f 85 f5 00 00 00 41 f7 c6 00 02 00 00 74 01 fb 48 c7 44 24 60 0e 36 e0 45 4b c7 44 3d 00 00 00 00 00 <66> 43 c7 44 3d 09 00 00 43 c6 44 3d 0b 00 65 48 8b 04 25 28 00 00
RSP: 0018:ffffc900000071c0 EFLAGS: 00000046
RAX: 0000000000000001 RBX: 0000000000000000 RCX: b1b2c199b332dc00
RDX: 0000000000000000 RSI: ffffffff8a8c15a0 RDI: ffffffff8adef6a0
RBP: ffffc900000072c8 R08: dffffc0000000000 R09: fffffbfff215bc49
R10: fffffbfff215bc49 R11: 1ffffffff215bc48 R12: 0000000000000000
R13: 1ffff92000000e44 R14: 0000000000000046 R15: dffffc0000000000
FS: 00007fa0197fe6c0(0000) GS:ffff8880b8e00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 000055557409a808 CR3: 0000000055bca000 CR4: 00000000003506f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
<IRQ>
rcu_lock_acquire include/linux/rcupdate.h:350 [inline]
rcu_read_lock include/linux/rcupdate.h:791 [inline]
__perf_output_begin kernel/events/ring_buffer.c:163 [inline]
perf_output_begin_forward+0xb5/0xa80 kernel/events/ring_buffer.c:272
__perf_event_output kernel/events/core.c:7732 [inline]
perf_event_output_forward+0x179/0x2a0 kernel/events/core.c:7750
__perf_event_overflow+0x448/0x610 kernel/events/core.c:9496
perf_swevent_overflow kernel/events/core.c:9572 [inline]
perf_swevent_event+0x4ad/0x530 kernel/events/core.c:9610
perf_tp_event+0x335/0xb60 kernel/events/core.c:10029
perf_trace_run_bpf_submit+0xf3/0x1c0 kernel/events/core.c:10002
perf_trace_preemptirq_template+0x287/0x330 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+0x84/0x500 kernel/rcu/tree_plugin.h:682
Code: f1 f1 f1 00 f2 f2 f2 4a 89 04 2b 66 42 c7 44 2b 09 f3 f3 42 c6 44 2b 0b f3 65 44 8b 35 fd a7 96 7e 41 f7 c6 00 00 f0 00 74 45 <48> c7 44 24 40 0e 36 e0 45 4a c7 04 2b 00 00 00 00 66 42 c7 44 2b
RSP: 0018:ffffc90000007ac0 EFLAGS: 00000206
RAX: b1b2c199b332dc00 RBX: 1ffff92000000f60 RCX: b1b2c199b332dc00
RDX: dffffc0000000000 RSI: ffffffff8a8c0420 RDI: ffffffff8adef6a0
RBP: ffffc90000007bc0 R08: dffffc0000000000 R09: ffffed10171c6af6
R10: ffffed10171c6af6 R11: 1ffff110171c6af5 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]
ieee80211_rx_napi+0x219/0x3c0 net/mac80211/rx.c:5314
ieee80211_rx include/net/mac80211.h:4844 [inline]
ieee80211_handle_queued_frames+0x105/0x1b0 net/mac80211/main.c:317
tasklet_action_common+0x298/0x400 kernel/softirq.c:826
handle_softirqs+0x2a1/0x920 kernel/softirq.c:596
__do_softirq kernel/softirq.c:630 [inline]
invoke_softirq kernel/softirq.c:470 [inline]
__irq_exit_rcu+0x12f/0x220 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:__syscall_enter_from_user_work kernel/entry/common.c:97 [inline]
RIP: 0010:syscall_enter_from_user_mode+0x2a/0x80 kernel/entry/common.c:118
Code: 41 56 53 48 89 f3 49 89 fe 48 8b 7c 24 10 e8 ed fa ff ff 66 90 66 90 e8 54 c3 70 f7 e8 cf c1 70 f7 fb 65 48 8b 05 c6 16 ec 75 <48> 8b 70 08 40 f6 c6 3f 74 0b 4c 89 f7 5b 41 5e e9 b1 6a 57 f7 48
RSP: 0018:ffffc90005687f08 EFLAGS: 00000286
RAX: ffff88805ddd9dc0 RBX: 000000000000012a RCX: b1b2c199b332dc00
RDX: dffffc0000000000 RSI: ffffffff8a8c0420 RDI: ffffffff8adef6a0
RBP: ffffc90005687f48 R08: dffffc0000000000 R09: ffffed10171c6af6
R10: ffffed10171c6af6 R11: 1ffff110171c6af5 R12: 0000000000000000
R13: 0000000000000000 R14: ffffc90005687f58 R15: 0000000000000000
do_syscall_64+0x24/0xa0 arch/x86/entry/common.c:77
entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7fa01a18ebe9
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:00007fa0197fe038 EFLAGS: 00000246 ORIG_RAX: 000000000000012a
RAX: ffffffffffffffda RBX: 00007fa01a3b5fa0 RCX: 00007fa01a18ebe9
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000200000000140
RBP: 00007fa01a211e19 R08: 0000000000000000 R09: 0000000000000000
R10: ffffffffffffffff R11: 0000000000000246 R12: 0000000000000000
R13: 00007fa01a3b6038 R14: 00007fa01a3b5fa0 R15: 00007ffc4ea1d0e8
</TASK>


---

syzbot

unread,
Nov 13, 2025, 7:23:04 AM11/13/25
to syzkaller...@googlegroups.com
syzbot suspects this issue could be fixed by backporting the following commit:

commit f4bf3ca2e5cba655824b6e0893a98dfb33ed24e5
git tree: upstream
Author: Lingutla Chandrasekhar <clin...@codeaurora.org>
Date: Fri Apr 7 23:05:26 2023 +0000

softirq: Add trace points for tasklet entry/exit

bisection log: https://syzkaller.appspot.com/x/bisect.txt?x=101aeb42580000
Please keep in mind that other backports might be required as well.

For information about bisection process see: https://goo.gl/tpsmEJ#bisection

syzbot

unread,
Dec 6, 2025, 9:56:03 PM12/6/25
to syzkaller...@googlegroups.com
The commit that was suspected to fix the issue was backported to the fuzzed
kernel trees.

commit 4443fc58fcc283a9a7aa73f2f30e427296612ec7
Author: <sumanth...@yahoo.com>
Date: Wed Nov 12 03:16:20 2025 +0000

softirq: Add trace points for tasklet entry/exit

If you believe this is correct, please reply with
#syz fix: softirq: Add trace points for tasklet entry/exit

The commit was initially detected here:
Reply all
Reply to author
Forward
0 new messages