BUG: sleeping function called from invalid context at kernel/workqueue.c:3414
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 5771, name: syz-executor
preempt_count: 102, expected: 0
RCU nest depth: 0, expected: 0
2 locks held by syz-executor/5771:
#0: ffff88807a45a3f0 (&sb->s_type->i_lock_key){+.+.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline]
#0: ffff88807a45a3f0 (&sb->s_type->i_lock_key){+.+.}-{2:2}, at: filemap_remove_folio+0xdb/0x2c0 mm/filemap.c:255
#1: ffffc90000007be0 ((&vub300->inactivity_timer)){+.-.}-{0:0}, at: call_timer_fn+0xd2/0x540 kernel/time/timer.c:1698
Preemption disabled at:
[<0000000000000000>] 0x0
CPU: 0 PID: 5771 Comm: syz-executor Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Call Trace:
dump_stack_lvl+0x18c/0x250 lib/dump_stack.c:106
__might_resched+0x48d/0x5f0 kernel/sched/core.c:10212
start_flush_work kernel/workqueue.c:3414 [inline]
__flush_work+0x10f/0xac0 kernel/workqueue.c:3474
__cancel_work_timer+0x3f8/0x560 kernel/workqueue.c:3562
mmc_free_host+0x19/0x30 drivers/mmc/core/host.c:694
call_timer_fn+0x189/0x540 kernel/time/timer.c:1701
expire_timers kernel/time/timer.c:1752 [inline]
__run_timers+0x570/0x810 kernel/time/timer.c:2023
run_timer_softirq+0x67/0xf0 kernel/time/timer.c:2036
handle_softirqs+0x27d/0x820 kernel/softirq.c:578
__do_softirq kernel/softirq.c:612 [inline]
invoke_softirq kernel/softirq.c:452 [inline]
__irq_exit_rcu+0xd3/0x190 kernel/softirq.c:661
irq_exit_rcu+0x9/0x20 kernel/softirq.c:673
instr_sysvec_apic_timer_interrupt arch/x86/kernel/apic/apic.c:1088 [inline]
sysvec_apic_timer_interrupt+0xa4/0xc0 arch/x86/kernel/apic/apic.c:1088
asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:687
RIP: 0010:__raw_spin_unlock_irq include/linux/spinlock_api_smp.h:160 [inline]
RIP: 0010:_raw_spin_unlock_irq+0x29/0x50 kernel/locking/spinlock.c:202
Code: 00 f3 0f 1e fa 53 48 89 fb 48 83 c7 18 48 8b 74 24 08 e8 0a 46 d0 f6 48 89 df e8 b2 19 d1 f6 e8 1d 21 f5 f6 fb bf 01 00 00 00 e2 27 c4 f6 65 8b 05 43 f6 6a 75 85 c0 74 02 5b c3 e8 f0 da 67
RSP: 0018:ffffc9000468f778 EFLAGS: 00000286
RAX: 0fe0b46c77045600 RBX: ffff88807a45a570 RCX: 0fe0b46c77045600
RDX: dffffc0000000000 RSI: ffffffff8acacbe0 RDI: 0000000000000001
RBP: ffffc9000468fa30 R08: ffffffff911ed517 R09: 1ffffffff223daa2
R10: dffffc0000000000 R11: fffffbfff223daa3 R12: dffffc0000000000
R13: 1ffff1100f48b4ad R14: ffff88807a45a568 R15: ffff88807a45a570
spin_unlock_irq include/linux/spinlock.h:401 [inline]
filemap_remove_folio+0xf9/0x2c0 mm/filemap.c:258
truncate_inode_folio+0x5d/0x70 mm/truncate.c:195
shmem_undo_range+0x3f0/0x1a80 mm/shmem.c:1022
shmem_truncate_range mm/shmem.c:1135 [inline]
shmem_evict_inode+0x285/0xa70 mm/shmem.c:1264
evict+0x4b7/0x8a0 fs/inode.c:705
__dentry_kill+0x412/0x630 fs/dcache.c:611
dentry_kill+0xb8/0x290 fs/dcache.c:-1
dput+0xfe/0x1e0 fs/dcache.c:918
__fput+0x5b2/0x940 fs/file_table.c:426
task_work_run+0x1d4/0x260 kernel/task_work.c:245
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:291 [inline]
syscall_exit_to_user_mode+0x1a/0x50 kernel/entry/common.c:302
do_syscall_64+0x61/0xb0 arch/x86/entry/common.c:82
entry_SYSCALL_64_after_hwframe+0x68/0xd2
RIP: 0033:0x7f238e39f317
Code: a2 c7 05 dc 43 25 00 00 00 00 00 eb 96 e8 e1 12 00 00 90 31 f6 e9 09 00 00 00 66 0f 1f 84 00 00 00 00 00 b8 a6 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 01 c3 48 c7 c2 e8 ff ff ff f7 d8 64 89 02 b8
RSP: 002b:00007ffc7e4c14f8 EFLAGS: 00000246 ORIG_RAX: 00000000000000a6
RAX: 0000000000000000 RBX: 00007f238e434474 RCX: 00007f238e39f317
RDX: 0000000000000000 RSI: 0000000000000009 RDI: 00007ffc7e4c15b0
RBP: 00007ffc7e4c15b0 R08: 00007ffc7e4c25b0 R09: 00000000ffffffff
R10: 0000000000000000 R11: 0000000000000246 R12: 00007ffc7e4c2640
R13: 00007f238e434474 R14: 000000000001dfc5 R15: 00007ffc7e4c2680
ODEBUG: object ffffc900000079c0 is NOT on stack ffffc90004688000, but annotated.
======================================================
----------------
Code disassembly (best guess):
0: 00 f3 add %dh,%bl
2: 0f 1e fa nop %edx
5: 53 push %rbx
6: 48 89 fb mov %rdi,%rbx
9: 48 83 c7 18 add $0x18,%rdi
d: 48 8b 74 24 08 mov 0x8(%rsp),%rsi
12: e8 0a 46 d0 f6 call 0xf6d04621
17: 48 89 df mov %rbx,%rdi
1a: e8 b2 19 d1 f6 call 0xf6d119d1
1f: e8 1d 21 f5 f6 call 0xf6f52141
24: fb sti
25: bf 01 00 00 00 mov $0x1,%edi
* 2a: e8 e2 27 c4 f6 call 0xf6c42811 <-- trapping instruction
2f: 65 8b 05 43 f6 6a 75 mov %gs:0x756af643(%rip),%eax # 0x756af679
36: 85 c0 test %eax,%eax
38: 74 02 je 0x3c
3a: 5b pop %rbx
3b: c3 ret
3c: e8 .byte 0xe8
3d: f0 lock
3e: da .byte 0xda
3f: 67 addr32