WARNING: suspicious RCU usage in mmc_free_host

Status: upstream: reported on 2026/08/26 09:11
Reported-by: syzbot+0128e31dce1a8db3bd93@syzkaller.appspotmail.com
First crash: 1d15h, last: 1d15h
Similar bugs (1)
Kernel Title Rank 🛈 Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream WARNING: suspicious RCU usage in mmc_free_host mmc prio:high 4 34 15h00m 5d19h 0/29 upstream: reported on 2026/08/22 06:04

Sample crash report:
=============================
WARNING: suspicious RCU usage
syzkaller #0 Not tainted
-----------------------------
kernel/sched/core.c:10174 Illegal context switch in RCU-sched read-side critical section!

other info that might help us debug this:


rcu_scheduler_active = 2, debug_locks = 1
5 locks held by syz.3.1295/10770:
 #0: ffff888017c6e0a0 (&mm->mmap_lock){++++}-{3:3}, at: mmap_read_lock include/linux/mmap_lock.h:146 [inline]
 #0: ffff888017c6e0a0 (&mm->mmap_lock){++++}-{3:3}, at: exit_mmap+0x182/0xb90 mm/mmap.c:3287
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:786 [inline]
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: __pte_offset_map+0x2c/0x280 mm/pgtable-generic.c:287
 #2: ffff888078635378 (ptlock_ptr(ptdesc)#2){+.+.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline]
 #2: ffff888078635378 (ptlock_ptr(ptdesc)#2){+.+.}-{2:2}, at: __pte_offset_map_lock+0x106/0x1d0 mm/pgtable-generic.c:375
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_read_lock_sched include/linux/rcupdate.h:878 [inline]
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: pfn_valid+0xcd/0x420 include/linux/mmzone.h:2011
 #4: ffffc90000007be0 ((&vub300->inactivity_timer)){+.-.}-{0:0}, at: call_timer_fn+0xd2/0x540 kernel/time/timer.c:1698

stack backtrace:
CPU: 0 PID: 10770 Comm: syz.3.1295 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Call Trace:
 <IRQ>
 dump_stack_lvl+0x18c/0x250 lib/dump_stack.c:106
 lockdep_rcu_suspicious+0x1e1/0x300 kernel/locking/lockdep.c:6731
 __might_resched+0x123/0x5f0 kernel/sched/core.c:10174
 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
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:687
RIP: 0010:__preempt_count_add arch/x86/include/asm/preempt.h:80 [inline]
RIP: 0010:rcu_is_watching+0x6/0xb0 kernel/rcu/tree.c:699
Code: 8a e8 0e 50 1e 09 48 c7 c7 00 86 13 8d 4c 89 f6 e8 3f c7 f5 02 e9 44 ff ff ff 66 2e 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 41 57 <41> 56 53 65 ff 05 a8 7e 92 7e e8 cb 65 1e 09 89 c3 83 f8 08 73 60
RSP: 0018:ffffc90003cc72f0 EFLAGS: 00000257
RAX: 0000000000000001 RBX: 0000000000000000 RCX: ffffffff816908b6
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffff8e8c8668
RBP: ffffc90003cc7418 R08: ffffffff8e8c866f R09: 1ffffffff1d190cd
R10: dffffc0000000000 R11: fffffbfff1d190ce R12: ffffffff81eb027d
R13: dffffc0000000000 R14: 0000000000000001 R15: 1ffff92000798e6c
 trace_lock_release include/trace/events/lock.h:69 [inline]
 lock_release+0xb5/0x8c0 kernel/locking/lockdep.c:5765
 rcu_lock_release include/linux/rcupdate.h:344 [inline]
 rcu_read_unlock_sched include/linux/rcupdate.h:899 [inline]
 pfn_valid+0x3c5/0x420 include/linux/mmzone.h:2021
 page_table_check_clear+0x1e/0x6a0 mm/page_table_check.c:70
 ptep_get_and_clear_full arch/x86/include/asm/jump_label.h:-1 [inline]
 zap_pte_range mm/memory.c:1429 [inline]
 zap_pmd_range mm/memory.c:1571 [inline]
 zap_pud_range mm/memory.c:1600 [inline]
 zap_p4d_range mm/memory.c:1621 [inline]
 unmap_page_range+0x1c35/0x32f0 mm/memory.c:1642
 unmap_vmas+0x286/0x3f0 mm/memory.c:1732
 exit_mmap+0x238/0xb90 mm/mmap.c:3302
 __mmput+0x118/0x3a0 kernel/fork.c:1362
 exit_mm+0x23f/0x340 kernel/exit.c:576
 do_exit+0x909/0x2530 kernel/exit.c:877
 do_group_exit+0x22d/0x2f0 kernel/exit.c:1032
 get_signal+0x12a6/0x1390 kernel/signal.c:2911
 arch_do_signal_or_restart+0xc2/0x7b0 arch/x86/kernel/signal.c:310
 exit_to_user_mode_loop+0x70/0x110 kernel/entry/common.c:174
 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:0x7fb56b39e0d9
Code: Unable to access opcode bytes at 0x7fb56b39e0af.
RSP: 002b:00007fb56c2c9028 EFLAGS: 00000246 ORIG_RAX: 0000000000000133
RAX: 0000000000000116 RBX: 00007fb56b625fa0 RCX: 00007fb56b39e0d9
RDX: 0000000000000651 RSI: 0000200000000000 RDI: 0000000000000005
RBP: 00007fb56b435024 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fb56b626038 R14: 00007fb56b625fa0 R15: 00007fffd3ef3d88
 </TASK>
BUG: sleeping function called from invalid context at kernel/workqueue.c:3414
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10770, name: syz.3.1295
preempt_count: 102, expected: 0
RCU nest depth: 1, expected: 0
5 locks held by syz.3.1295/10770:
 #0: ffff888017c6e0a0 (&mm->mmap_lock){++++}-{3:3}, at: mmap_read_lock include/linux/mmap_lock.h:146 [inline]
 #0: ffff888017c6e0a0 (&mm->mmap_lock){++++}-{3:3}, at: exit_mmap+0x182/0xb90 mm/mmap.c:3287
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:786 [inline]
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: __pte_offset_map+0x2c/0x280 mm/pgtable-generic.c:287
 #2: ffff888078635378 (ptlock_ptr(ptdesc)#2){+.+.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline]
 #2: ffff888078635378 (ptlock_ptr(ptdesc)#2){+.+.}-{2:2}, at: __pte_offset_map_lock+0x106/0x1d0 mm/pgtable-generic.c:375
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_read_lock_sched include/linux/rcupdate.h:878 [inline]
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: pfn_valid+0xcd/0x420 include/linux/mmzone.h:2011
 #4: 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: 10770 Comm: syz.3.1295 Not tainted syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Call Trace:
 <IRQ>
 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
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:687
RIP: 0010:__preempt_count_add arch/x86/include/asm/preempt.h:80 [inline]
RIP: 0010:rcu_is_watching+0x6/0xb0 kernel/rcu/tree.c:699
Code: 8a e8 0e 50 1e 09 48 c7 c7 00 86 13 8d 4c 89 f6 e8 3f c7 f5 02 e9 44 ff ff ff 66 2e 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 41 57 <41> 56 53 65 ff 05 a8 7e 92 7e e8 cb 65 1e 09 89 c3 83 f8 08 73 60
RSP: 0018:ffffc90003cc72f0 EFLAGS: 00000257
RAX: 0000000000000001 RBX: 0000000000000000 RCX: ffffffff816908b6
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffff8e8c8668
RBP: ffffc90003cc7418 R08: ffffffff8e8c866f R09: 1ffffffff1d190cd
R10: dffffc0000000000 R11: fffffbfff1d190ce R12: ffffffff81eb027d
R13: dffffc0000000000 R14: 0000000000000001 R15: 1ffff92000798e6c
 trace_lock_release include/trace/events/lock.h:69 [inline]
 lock_release+0xb5/0x8c0 kernel/locking/lockdep.c:5765
 rcu_lock_release include/linux/rcupdate.h:344 [inline]
 rcu_read_unlock_sched include/linux/rcupdate.h:899 [inline]
 pfn_valid+0x3c5/0x420 include/linux/mmzone.h:2021
 page_table_check_clear+0x1e/0x6a0 mm/page_table_check.c:70
 ptep_get_and_clear_full arch/x86/include/asm/jump_label.h:-1 [inline]
 zap_pte_range mm/memory.c:1429 [inline]
 zap_pmd_range mm/memory.c:1571 [inline]
 zap_pud_range mm/memory.c:1600 [inline]
 zap_p4d_range mm/memory.c:1621 [inline]
 unmap_page_range+0x1c35/0x32f0 mm/memory.c:1642
 unmap_vmas+0x286/0x3f0 mm/memory.c:1732
 exit_mmap+0x238/0xb90 mm/mmap.c:3302
 __mmput+0x118/0x3a0 kernel/fork.c:1362
 exit_mm+0x23f/0x340 kernel/exit.c:576
 do_exit+0x909/0x2530 kernel/exit.c:877
 do_group_exit+0x22d/0x2f0 kernel/exit.c:1032
 get_signal+0x12a6/0x1390 kernel/signal.c:2911
 arch_do_signal_or_restart+0xc2/0x7b0 arch/x86/kernel/signal.c:310
 exit_to_user_mode_loop+0x70/0x110 kernel/entry/common.c:174
 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:0x7fb56b39e0d9
Code: Unable to access opcode bytes at 0x7fb56b39e0af.
RSP: 002b:00007fb56c2c9028 EFLAGS: 00000246 ORIG_RAX: 0000000000000133
RAX: 0000000000000116 RBX: 00007fb56b625fa0 RCX: 00007fb56b39e0d9
RDX: 0000000000000651 RSI: 0000200000000000 RDI: 0000000000000005
RBP: 00007fb56b435024 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fb56b626038 R14: 00007fb56b625fa0 R15: 00007fffd3ef3d88
 </TASK>

=============================
WARNING: suspicious RCU usage
syzkaller #0 Tainted: G        W         
-----------------------------
kernel/rcu/srcutree.c:1377 Illegal synchronize_srcu() in same-type SRCU (or in RCU) read-side critical section!

other info that might help us debug this:


rcu_scheduler_active = 2, debug_locks = 1
5 locks held by syz.3.1295/10770:
 #0: ffff888017c6e0a0 (&mm->mmap_lock){++++}-{3:3}, at: mmap_read_lock include/linux/mmap_lock.h:146 [inline]
 #0: ffff888017c6e0a0 (&mm->mmap_lock){++++}-{3:3}, at: exit_mmap+0x182/0xb90 mm/mmap.c:3287
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:786 [inline]
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: __pte_offset_map+0x2c/0x280 mm/pgtable-generic.c:287
 #2: ffff888078635378 (ptlock_ptr(ptdesc)#2){+.+.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline]
 #2: ffff888078635378 (ptlock_ptr(ptdesc)#2){+.+.}-{2:2}, at: __pte_offset_map_lock+0x106/0x1d0 mm/pgtable-generic.c:375
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_read_lock_sched include/linux/rcupdate.h:878 [inline]
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: pfn_valid+0xcd/0x420 include/linux/mmzone.h:2011
 #4: ffffc90000007be0 ((&vub300->inactivity_timer)){+.-.}-{0:0}, at: call_timer_fn+0xd2/0x540 kernel/time/timer.c:1698

stack backtrace:
CPU: 0 PID: 10770 Comm: syz.3.1295 Tainted: G        W          syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Call Trace:
 <IRQ>
 dump_stack_lvl+0x18c/0x250 lib/dump_stack.c:106
 lockdep_rcu_suspicious+0x1e1/0x300 kernel/locking/lockdep.c:6731
 __synchronize_srcu+0x150/0x3d0 kernel/rcu/srcutree.c:1373
 wakeup_source_remove drivers/base/power/wakeup.c:198 [inline]
 wakeup_source_unregister+0x116/0x190 drivers/base/power/wakeup.c:242
 mmc_host_classdev_release+0x47/0x100 drivers/mmc/core/host.c:77
 device_release+0xbc/0x1e0 drivers/base/core.c:-1
 kobject_cleanup lib/kobject.c:689 [inline]
 kobject_release lib/kobject.c:720 [inline]
 kref_put include/linux/kref.h:65 [inline]
 kobject_put+0x21b/0x450 lib/kobject.c:737
 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
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:687
RIP: 0010:__preempt_count_add arch/x86/include/asm/preempt.h:80 [inline]
RIP: 0010:rcu_is_watching+0x6/0xb0 kernel/rcu/tree.c:699
Code: 8a e8 0e 50 1e 09 48 c7 c7 00 86 13 8d 4c 89 f6 e8 3f c7 f5 02 e9 44 ff ff ff 66 2e 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 41 57 <41> 56 53 65 ff 05 a8 7e 92 7e e8 cb 65 1e 09 89 c3 83 f8 08 73 60
RSP: 0018:ffffc90003cc72f0 EFLAGS: 00000257
RAX: 0000000000000001 RBX: 0000000000000000 RCX: ffffffff816908b6
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffff8e8c8668
RBP: ffffc90003cc7418 R08: ffffffff8e8c866f R09: 1ffffffff1d190cd
R10: dffffc0000000000 R11: fffffbfff1d190ce R12: ffffffff81eb027d
R13: dffffc0000000000 R14: 0000000000000001 R15: 1ffff92000798e6c
 trace_lock_release include/trace/events/lock.h:69 [inline]
 lock_release+0xb5/0x8c0 kernel/locking/lockdep.c:5765
 rcu_lock_release include/linux/rcupdate.h:344 [inline]
 rcu_read_unlock_sched include/linux/rcupdate.h:899 [inline]
 pfn_valid+0x3c5/0x420 include/linux/mmzone.h:2021
 page_table_check_clear+0x1e/0x6a0 mm/page_table_check.c:70
 ptep_get_and_clear_full arch/x86/include/asm/jump_label.h:-1 [inline]
 zap_pte_range mm/memory.c:1429 [inline]
 zap_pmd_range mm/memory.c:1571 [inline]
 zap_pud_range mm/memory.c:1600 [inline]
 zap_p4d_range mm/memory.c:1621 [inline]
 unmap_page_range+0x1c35/0x32f0 mm/memory.c:1642
 unmap_vmas+0x286/0x3f0 mm/memory.c:1732
 exit_mmap+0x238/0xb90 mm/mmap.c:3302
 __mmput+0x118/0x3a0 kernel/fork.c:1362
 exit_mm+0x23f/0x340 kernel/exit.c:576
 do_exit+0x909/0x2530 kernel/exit.c:877
 do_group_exit+0x22d/0x2f0 kernel/exit.c:1032
 get_signal+0x12a6/0x1390 kernel/signal.c:2911
 arch_do_signal_or_restart+0xc2/0x7b0 arch/x86/kernel/signal.c:310
 exit_to_user_mode_loop+0x70/0x110 kernel/entry/common.c:174
 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:0x7fb56b39e0d9
Code: Unable to access opcode bytes at 0x7fb56b39e0af.
RSP: 002b:00007fb56c2c9028 EFLAGS: 00000246 ORIG_RAX: 0000000000000133
RAX: 0000000000000116 RBX: 00007fb56b625fa0 RCX: 00007fb56b39e0d9
RDX: 0000000000000651 RSI: 0000200000000000 RDI: 0000000000000005
RBP: 00007fb56b435024 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fb56b626038 R14: 00007fb56b625fa0 R15: 00007fffd3ef3d88
 </TASK>
BUG: sleeping function called from invalid context at kernel/rcu/srcutree.c:1381
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 10770, name: syz.3.1295
preempt_count: 102, expected: 0
RCU nest depth: 1, expected: 0
5 locks held by syz.3.1295/10770:
 #0: ffff888017c6e0a0 (&mm->mmap_lock){++++}-{3:3}, at: mmap_read_lock include/linux/mmap_lock.h:146 [inline]
 #0: ffff888017c6e0a0 (&mm->mmap_lock){++++}-{3:3}, at: exit_mmap+0x182/0xb90 mm/mmap.c:3287
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: rcu_read_lock include/linux/rcupdate.h:786 [inline]
 #1: ffffffff8d131da0 (rcu_read_lock){....}-{1:2}, at: __pte_offset_map+0x2c/0x280 mm/pgtable-generic.c:287
 #2: ffff888078635378 (ptlock_ptr(ptdesc)#2){+.+.}-{2:2}, at: spin_lock include/linux/spinlock.h:351 [inline]
 #2: ffff888078635378 (ptlock_ptr(ptdesc)#2){+.+.}-{2:2}, at: __pte_offset_map_lock+0x106/0x1d0 mm/pgtable-generic.c:375
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_lock_acquire include/linux/rcupdate.h:334 [inline]
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: rcu_read_lock_sched include/linux/rcupdate.h:878 [inline]
 #3: ffffffff8d131e60 (rcu_read_lock_sched){....}-{1:2}, at: pfn_valid+0xcd/0x420 include/linux/mmzone.h:2011
 #4: 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: 10770 Comm: syz.3.1295 Tainted: G        W          syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026
Call Trace:
 <IRQ>
 dump_stack_lvl+0x18c/0x250 lib/dump_stack.c:106
 __might_resched+0x48d/0x5f0 kernel/sched/core.c:10212
 __synchronize_srcu+0x197/0x3d0 kernel/rcu/srcutree.c:1381
 wakeup_source_remove drivers/base/power/wakeup.c:198 [inline]
 wakeup_source_unregister+0x116/0x190 drivers/base/power/wakeup.c:242
 mmc_host_classdev_release+0x47/0x100 drivers/mmc/core/host.c:77
 device_release+0xbc/0x1e0 drivers/base/core.c:-1
 kobject_cleanup lib/kobject.c:689 [inline]
 kobject_release lib/kobject.c:720 [inline]
 kref_put include/linux/kref.h:65 [inline]
 kobject_put+0x21b/0x450 lib/kobject.c:737
 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
 </IRQ>
 <TASK>
 asm_sysvec_apic_timer_interrupt+0x1a/0x20 arch/x86/include/asm/idtentry.h:687
RIP: 0010:__preempt_count_add arch/x86/include/asm/preempt.h:80 [inline]
RIP: 0010:rcu_is_watching+0x6/0xb0 kernel/rcu/tree.c:699
Code: 8a e8 0e 50 1e 09 48 c7 c7 00 86 13 8d 4c 89 f6 e8 3f c7 f5 02 e9 44 ff ff ff 66 2e 0f 1f 84 00 00 00 00 00 f3 0f 1e fa 41 57 <41> 56 53 65 ff 05 a8 7e 92 7e e8 cb 65 1e 09 89 c3 83 f8 08 73 60
RSP: 0018:ffffc90003cc72f0 EFLAGS: 00000257
RAX: 0000000000000001 RBX: 0000000000000000 RCX: ffffffff816908b6
RDX: 0000000000000000 RSI: 0000000000000008 RDI: ffffffff8e8c8668
RBP: ffffc90003cc7418 R08: ffffffff8e8c866f R09: 1ffffffff1d190cd
R10: dffffc0000000000 R11: fffffbfff1d190ce R12: ffffffff81eb027d
R13: dffffc0000000000 R14: 0000000000000001 R15: 1ffff92000798e6c
 trace_lock_release include/trace/events/lock.h:69 [inline]
 lock_release+0xb5/0x8c0 kernel/locking/lockdep.c:5765
 rcu_lock_release include/linux/rcupdate.h:344 [inline]
 rcu_read_unlock_sched include/linux/rcupdate.h:899 [inline]
 pfn_valid+0x3c5/0x420 include/linux/mmzone.h:2021
 page_table_check_clear+0x1e/0x6a0 mm/page_table_check.c:70
 ptep_get_and_clear_full arch/x86/include/asm/jump_label.h:-1 [inline]
 zap_pte_range mm/memory.c:1429 [inline]
 zap_pmd_range mm/memory.c:1571 [inline]
 zap_pud_range mm/memory.c:1600 [inline]
 zap_p4d_range mm/memory.c:1621 [inline]
 unmap_page_range+0x1c35/0x32f0 mm/memory.c:1642
 unmap_vmas+0x286/0x3f0 mm/memory.c:1732
 exit_mmap+0x238/0xb90 mm/mmap.c:3302
 __mmput+0x118/0x3a0 kernel/fork.c:1362
 exit_mm+0x23f/0x340 kernel/exit.c:576
 do_exit+0x909/0x2530 kernel/exit.c:877
 do_group_exit+0x22d/0x2f0 kernel/exit.c:1032
 get_signal+0x12a6/0x1390 kernel/signal.c:2911
 arch_do_signal_or_restart+0xc2/0x7b0 arch/x86/kernel/signal.c:310
 exit_to_user_mode_loop+0x70/0x110 kernel/entry/common.c:174
 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:0x7fb56b39e0d9
Code: Unable to access opcode bytes at 0x7fb56b39e0af.
RSP: 002b:00007fb56c2c9028 EFLAGS: 00000246 ORIG_RAX: 0000000000000133
RAX: 0000000000000116 RBX: 00007fb56b625fa0 RCX: 00007fb56b39e0d9
RDX: 0000000000000651 RSI: 0000200000000000 RDI: 0000000000000005
RBP: 00007fb56b435024 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fb56b626038 R14: 00007fb56b625fa0 R15: 00007fffd3ef3d88
 </TASK>
ODEBUG: object ffffc900000079c0 is NOT on stack ffffc90003cc0000, but annotated.

======================================================
----------------
Code disassembly (best guess), 1 bytes skipped:
   0:	e8 0e 50 1e 09       	call   0x91e5013
   5:	48 c7 c7 00 86 13 8d 	mov    $0xffffffff8d138600,%rdi
   c:	4c 89 f6             	mov    %r14,%rsi
   f:	e8 3f c7 f5 02       	call   0x2f5c753
  14:	e9 44 ff ff ff       	jmp    0xffffff5d
  19:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
  20:	00 00 00
  23:	f3 0f 1e fa          	endbr64
  27:	41 57                	push   %r15
* 29:	41 56                	push   %r14 <-- trapping instruction
  2b:	53                   	push   %rbx
  2c:	65 ff 05 a8 7e 92 7e 	incl   %gs:0x7e927ea8(%rip)        # 0x7e927edb
  33:	e8 cb 65 1e 09       	call   0x91e6603
  38:	89 c3                	mov    %eax,%ebx
  3a:	83 f8 08             	cmp    $0x8,%eax
  3d:	73 60                	jae    0x9f

Crashes (1):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2026/08/26 09:11 linux-6.6.y dc6160265ffc 6a91adb4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-6-kasan WARNING: suspicious RCU usage in mmc_free_host
* Struck through repros no longer work on HEAD.