BUG: sleeping function called from invalid context at block/blk-sysfs.c:766
in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 3075, name: syz-executor.3
preempt_count: 101, expected: 0
RCU nest depth: 1, expected: 0
INFO: lockdep is turned off.
Preemption disabled at:
[<0000000000000000>] 0x0
CPU: 0 PID: 3075 Comm: syz-executor.3 Tainted: G W 5.17.0-syzkaller-13573-g8e9d0d7a76c5 #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:88 [inline]
dump_stack_lvl+0xcd/0x134 lib/dump_stack.c:106
__might_resched.cold+0x222/0x26b kernel/sched/core.c:9733
blk_release_queue+0x1f/0x320 block/blk-sysfs.c:766
kobject_cleanup lib/kobject.c:705 [inline]
kobject_release lib/kobject.c:736 [inline]
kref_put include/linux/kref.h:65 [inline]
kobject_put+0x1c8/0x540 lib/kobject.c:753
blkg_free.part.0+0x112/0x1f0 block/blk-cgroup.c:86
blkg_free block/blk-cgroup.c:78 [inline]
__blkg_release+0x105/0x160 block/blk-cgroup.c:102
rcu_do_batch kernel/rcu/tree.c:2535 [inline]
rcu_core+0x7b1/0x1880 kernel/rcu/tree.c:2786
__do_softirq+0x29b/0x9c2 kernel/softirq.c:558
invoke_softirq kernel/softirq.c:432 [inline]
__irq_exit_rcu+0x123/0x180 kernel/softirq.c:637
irq_exit_rcu+0x5/0x20 kernel/softirq.c:649
sysvec_apic_timer_interrupt+0x93/0xc0 arch/x86/kernel/apic/apic.c:1097
asm_sysvec_apic_timer_interrupt+0x12/0x20 arch/x86/include/asm/idtentry.h:645
RIP: 0010:__kasan_check_read+0x4/0x10 mm/kasan/shadow.c:31
Code: 0f 0b 48 83 c4 60 5b 5d 41 5c c3 48 05 00 80 00 00 48 89 fb 48 39 c7 0f 82 b6 0c 58 07 eb e1 cc cc cc cc cc cc cc 48 8b 0c 24 <89> f6 31 d2 e9 b3 fa ff ff 0f 1f 00 48 8b 0c 24 89 f6 ba 01 00 00
RSP: 0018:ffffc9000a98f708 EFLAGS: 00000246
RAX: ffffea00014d6c80 RBX: 0000000000000000 RCX: ffffffff81cc0bf9
RDX: 1ffffd400029ad91 RSI: 0000000000000008 RDI: ffffea00014d6c80
RBP: ffffea00014d6c80 R08: 0000000000000001 R09: 0000000000000000
R10: ffffffff81b7242c R11: 0000000000000000 R12: ffffea00014d6c80
R13: ffffea00014d6c88 R14: 0000000000000000 R15: 0000000000000000
instrument_atomic_read include/linux/instrumented.h:71 [inline]
test_bit include/asm-generic/bitops/instrumented-non-atomic.h:134 [inline]
folio_test_slab include/linux/page-flags.h:497 [inline]
__folio_memcg include/linux/memcontrol.h:397 [inline]
folio_memcg include/linux/memcontrol.h:449 [inline]
folio_memcg_unlock mm/memcontrol.c:2087 [inline]
unlock_page_memcg+0x89/0x2e0 mm/memcontrol.c:2092
page_remove_rmap+0x318/0x1510 mm/rmap.c:1413
zap_pte_range mm/memory.c:1389 [inline]
zap_pmd_range mm/memory.c:1497 [inline]
zap_pud_range mm/memory.c:1526 [inline]
zap_p4d_range mm/memory.c:1547 [inline]
unmap_page_range+0xffa/0x3fa0 mm/memory.c:1568
unmap_single_vma+0x198/0x310 mm/memory.c:1613
unmap_vmas+0x16b/0x2f0 mm/memory.c:1645
exit_mmap+0x1c4/0x4a0 mm/mmap.c:3148
__mmput+0x122/0x4b0 kernel/fork.c:1183
mmput+0x56/0x60 kernel/fork.c:1205
exit_mm kernel/exit.c:510 [inline]
do_exit+0xa12/0x2a00 kernel/exit.c:782
do_group_exit+0xd2/0x2f0 kernel/exit.c:925
get_signal+0x22df/0x24c0 kernel/signal.c:2904
arch_do_signal_or_restart+0x82/0x20f0 arch/x86/kernel/signal.c:867
exit_to_user_mode_loop kernel/entry/common.c:180 [inline]
exit_to_user_mode_prepare+0x15f/0x250 kernel/entry/common.c:215
__syscall_exit_to_user_mode_work kernel/entry/common.c:297 [inline]
syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:308
do_syscall_64+0x42/0xb0 arch/x86/entry/common.c:86
entry_SYSCALL_64_after_hwframe+0x44/0xae
RIP: 0033:0x7f8a0d489049
Code: Unable to access opcode bytes at RIP 0x7f8a0d48901f.
RSP: 002b:00007f8a0e5c9168 EFLAGS: 00000246 ORIG_RAX: 0000000000000029
RAX: 0000000000000030 RBX: 00007f8a0d59c030 RCX: 00007f8a0d489049
RDX: 0000000000000000 RSI: 0000000000000003 RDI: 0000000000000010
RBP: 00007f8a0d4e308d R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007fff3b907ecf R14: 00007f8a0e5c9300 R15: 0000000000022000
----------------
Code disassembly (best guess):
0: 0f 0b ud2
2: 48 83 c4 60 add $0x60,%rsp
6: 5b pop %rbx
7: 5d pop %rbp
8: 41 5c pop %r12
a: c3 retq
b: 48 05 00 80 00 00 add $0x8000,%rax
11: 48 89 fb mov %rdi,%rbx
14: 48 39 c7 cmp %rax,%rdi
17: 0f 82 b6 0c 58 07 jb 0x7580cd3
1d: eb e1 jmp 0x0
1f: cc int3
20: cc int3
21: cc int3
22: cc int3
23: cc int3
24: cc int3
25: cc int3
26: 48 8b 0c 24 mov (%rsp),%rcx
* 2a: 89 f6 mov %esi,%esi <-- trapping instruction
2c: 31 d2 xor %edx,%edx
2e: e9 b3 fa ff ff jmpq 0xfffffae6
33: 0f 1f 00 nopl (%rax)
36: 48 8b 0c 24 mov (%rsp),%rcx
3a: 89 f6 mov %esi,%esi
3c: ba .byte 0xba
3d: 01 00 add %eax,(%rax)