sched: DL replenish lagged too much
------------[ cut here ]------------
WARNING: CPU: 1 PID: 8447 at kernel/rcu/tree_stall.h:989 rcu_check_gp_start_stall+0x2cf/0x460 kernel/rcu/tree_stall.h:989
Modules linked in:
CPU: 1 UID: 0 PID: 8447 Comm: syz.3.670 Not tainted 6.14.0-rc3-syzkaller-g9aa8fe29f624 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025
RIP: 0010:rcu_check_gp_start_stall+0x2cf/0x460 kernel/rcu/tree_stall.h:989
Code: c7 80 6a 69 9a be 04 00 00 00 e8 2c bf 81 00 b8 01 00 00 00 87 05 11 ad c1 18 85 c0 0f 85 1a ff ff ff 48 c7 c0 80 dd b3 8e 90 <0f> 0b 90 49 39 c7 74 47 48 c7 c0 10 38 3d 90 48 c1 e8 03 42 0f b6
RSP: 0000:ffffc90000a18bb8 EFLAGS: 00010046
RAX: ffffffff8eb3dd80 RBX: 00000001000009a1 RCX: ffffffff81a7bd64
RDX: 0000000000000001 RSI: 0000000000000004 RDI: ffffffff9a696a80
RBP: ffffc90000a18e10 R08: 0000000000000003 R09: fffffbfff34d2d50
R10: dffffc0000000000 R11: fffffbfff34d2d50 R12: dffffc0000000000
R13: dffffc0000000000 R14: 0000000000000246 R15: ffffffff8eb3dd80
FS: 0000000000000000(0000) GS:ffff8880b8700000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b31614ff8 CR3: 000000000e938000 CR4: 00000000003526f0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000200000000300
DR3: 0000200000000300 DR6: 00000000ffff0ff0 DR7: 0000000000000600
Call Trace:
rcu_core+0x650/0x17a0 kernel/rcu/tree.c:2797
handle_softirqs+0x2d4/0x9b0 kernel/softirq.c:561
__do_softirq kernel/softirq.c:595 [inline]
invoke_softirq kernel/softirq.c:435 [inline]
__irq_exit_rcu+0xf7/0x220 kernel/softirq.c:662
irq_exit_rcu+0x9/0x30 kernel/softirq.c:678
instr_sysvec_irq_work arch/x86/kernel/irq_work.c:17 [inline]
sysvec_irq_work+0xa3/0xc0 arch/x86/kernel/irq_work.c:17
asm_sysvec_irq_work+0x1a/0x20 arch/x86/include/asm/idtentry.h:738
RIP: 0010:rcu_read_unlock_special+0x88/0x570 kernel/rcu/tree_plugin.h:694
Code: f1 f1 f1 00 f2 f2 f2 49 89 04 14 66 41 c7 44 14 09 f3 f3 41 c6 44 14 0b f3 65 44 8b 3d 39 e5 5b 7e 41 f7 c7 00 00 f0 00 74 49 <48> c7 44 24 20 0e 36 e0 45 4a c7 04 22 00 00 00 00 66 42 c7 44 22
RSP: 0000:ffffc9000b667820 EFLAGS: 00000206
RAX: 648cb5cc5aa42100 RBX: 1ffff920016ccf0c RCX: ffffffff819d316a
RDX: dffffc0000000000 RSI: ffffffff8c2aa4a0 RDI: ffffffff8c810bc0
RBP: ffffc9000b6678e8 R08: ffffffff9454c887 R09: 1ffffffff28a9910
R10: dffffc0000000000 R11: fffffbfff28a9911 R12: 1ffff920016ccf08
R13: ffff88802bb42260 R14: ffffc9000b667860 R15: 0000000000000000
__rcu_read_unlock+0xa1/0x110 kernel/rcu/tree_plugin.h:438
dput+0x197/0x2b0 fs/dcache.c:884
__fput+0x60b/0x9f0 fs/file_table.c:472
task_work_run+0x24f/0x310 kernel/task_work.c:227
exit_task_work include/linux/task_work.h:40 [inline]
do_exit+0xa2a/0x28e0 kernel/exit.c:938
do_group_exit+0x207/0x2c0 kernel/exit.c:1087
get_signal+0x168c/0x1720 kernel/signal.c:3036
arch_do_signal_or_restart+0x96/0x860 arch/x86/kernel/signal.c:337
exit_to_user_mode_loop kernel/entry/common.c:111 [inline]
exit_to_user_mode_prepare include/linux/entry-common.h:329 [inline]
__syscall_exit_to_user_mode_work kernel/entry/common.c:207 [inline]
syscall_exit_to_user_mode+0xce/0x340 kernel/entry/common.c:218
do_syscall_64+0x100/0x230 arch/x86/entry/common.c:89
entry_SYSCALL_64_after_hwframe+0x77/0x7f
RIP: 0033:0x7f7a7dd8d169
Code: Unable to access opcode bytes at 0x7f7a7dd8d13f.
RSP: 002b:00007f7a7eb200e8 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca
RAX: 0000000000000001 RBX: 00007f7a7dfa6168 RCX: 00007f7a7dd8d169
RDX: 00000000000f4240 RSI: 0000000000000081 RDI: 00007f7a7dfa616c
RBP: 00007f7a7dfa6160 R08: 7fffffffffffffff R09: 0000000000000000
R10: ffffffffffffffff R11: 0000000000000246 R12: 00007f7a7dfa616c
R13: 0000000000000000 R14: 00007fff69bd13f0 R15: 00007fff69bd14d8
----------------
Code disassembly (best guess):
0: f1 int1
1: f1 int1
2: f1 int1
3: 00 f2 add %dh,%dl
5: f2 f2 49 89 04 14 repnz repnz mov %rax,(%r12,%rdx,1)
b: 66 41 c7 44 14 09 f3 movw $0xf3f3,0x9(%r12,%rdx,1)
12: f3
13: 41 c6 44 14 0b f3 movb $0xf3,0xb(%r12,%rdx,1)
19: 65 44 8b 3d 39 e5 5b mov %gs:0x7e5be539(%rip),%r15d # 0x7e5be55a
20: 7e
21: 41 f7 c7 00 00 f0 00 test $0xf00000,%r15d
28: 74 49 je 0x73
* 2a: 48 c7 44 24 20 0e 36 movq $0x45e0360e,0x20(%rsp) <-- trapping instruction
31: e0 45
33: 4a c7 04 22 00 00 00 movq $0x0,(%rdx,%r12,1)
3a: 00
3b: 66 data16
3c: 42 rex.X
3d: c7 .byte 0xc7
3e: 44 rex.R
3f: 22 .byte 0x22