============================= [ BUG: Invalid wait context ] 6.13.0-rc7-syzkaller-g1950a0af2d55 #0 Not tainted ----------------------------- syz.2.367/8231 is trying to lock: ffff0001fea8ef58 (&zone->lock){..-.}-{3:3}, at: rmqueue_bulk mm/page_alloc.c:2309 [inline] ffff0001fea8ef58 (&zone->lock){..-.}-{3:3}, at: __rmqueue_pcplist+0x39c/0x30ec mm/page_alloc.c:3003 other info that might help us debug this: context-{2:2} 7 locks held by syz.2.367/8231: #0: ffff0000d5882c40 (&vma->vm_lock->lock){++++}-{4:4}, at: vma_start_read include/linux/mm.h:717 [inline] #0: ffff0000d5882c40 (&vma->vm_lock->lock){++++}-{4:4}, at: lock_vma_under_rcu+0x2c4/0x638 mm/memory.c:6278 #1: ffff80008fbf3160 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire+0x18/0x54 include/linux/rcupdate.h:336 #2: ffff80008fbf3160 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire+0x10/0x4c include/linux/rcupdate.h:336 #3: ffff80008fbf3160 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire+0x10/0x4c include/linux/rcupdate.h:336 #4: ffff0000ec4bfb58 (ptlock_ptr(ptdesc)#2){+.+.}-{3:3}, at: spin_lock include/linux/spinlock.h:351 [inline] #4: ffff0000ec4bfb58 (ptlock_ptr(ptdesc)#2){+.+.}-{3:3}, at: __pte_offset_map_lock+0x178/0x2ac mm/pgtable-generic.c:402 #5: ffff80008fbf3160 (rcu_read_lock){....}-{1:3}, at: rcu_lock_acquire+0x10/0x4c include/linux/rcupdate.h:336 #6: ffff0001b380c618 (&pcp->lock){+.+.}-{3:3}, at: spin_trylock include/linux/spinlock.h:361 [inline] #6: ffff0001b380c618 (&pcp->lock){+.+.}-{3:3}, at: rmqueue_pcplist mm/page_alloc.c:3032 [inline] #6: ffff0001b380c618 (&pcp->lock){+.+.}-{3:3}, at: rmqueue mm/page_alloc.c:3076 [inline] #6: ffff0001b380c618 (&pcp->lock){+.+.}-{3:3}, at: get_page_from_freelist+0x6a0/0x42b8 mm/page_alloc.c:3473 stack backtrace: CPU: 1 UID: 0 PID: 8231 Comm: syz.2.367 Not tainted 6.13.0-rc7-syzkaller-g1950a0af2d55 #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024 Call trace: show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:466 (C) __dump_stack lib/dump_stack.c:94 [inline] dump_stack_lvl+0xe4/0x150 lib/dump_stack.c:120 dump_stack+0x1c/0x28 lib/dump_stack.c:129 print_lock_invalid_wait_context kernel/locking/lockdep.c:4826 [inline] check_wait_context kernel/locking/lockdep.c:4898 [inline] __lock_acquire+0x2034/0x7904 kernel/locking/lockdep.c:5176 lock_acquire+0x23c/0x724 kernel/locking/lockdep.c:5849 __raw_spin_lock_irqsave include/linux/spinlock_api_smp.h:110 [inline] _raw_spin_lock_irqsave+0x5c/0x7c kernel/locking/spinlock.c:162 rmqueue_bulk mm/page_alloc.c:2309 [inline] __rmqueue_pcplist+0x39c/0x30ec mm/page_alloc.c:3003 rmqueue_pcplist mm/page_alloc.c:3045 [inline] rmqueue mm/page_alloc.c:3076 [inline] get_page_from_freelist+0x778/0x42b8 mm/page_alloc.c:3473 __alloc_pages_noprof+0x220/0x6a8 mm/page_alloc.c:4753 alloc_pages_mpol_noprof+0x33c/0x5f0 mm/mempolicy.c:2269 alloc_pages_noprof+0x168/0x200 mm/mempolicy.c:2348 stack_depot_save_flags+0x5b4/0x8b4 lib/stackdepot.c:627 kasan_save_stack+0x54/0x6c mm/kasan/common.c:48 __kasan_record_aux_stack+0xb8/0xd0 mm/kasan/generic.c:544 kasan_record_aux_stack+0x14/0x20 mm/kasan/generic.c:549 task_work_add+0xcc/0x484 kernel/task_work.c:77 __run_posix_cpu_timers kernel/time/posix-cpu-timers.c:1223 [inline] run_posix_cpu_timers+0x694/0x8fc kernel/time/posix-cpu-timers.c:1422 update_process_times+0x3b0/0x558 kernel/time/timer.c:2526 tick_sched_handle kernel/time/tick-sched.c:276 [inline] tick_nohz_handler+0x324/0x478 kernel/time/tick-sched.c:297 __run_hrtimer kernel/time/hrtimer.c:1739 [inline] __hrtimer_run_queues+0x44c/0xca4 kernel/time/hrtimer.c:1803 hrtimer_interrupt+0x2bc/0xb58 kernel/time/hrtimer.c:1865 timer_handler drivers/clocksource/arm_arch_timer.c:674 [inline] arch_timer_handler_virt+0x74/0x88 drivers/clocksource/arm_arch_timer.c:685 handle_percpu_devid_irq+0x174/0x308 kernel/irq/chip.c:942 generic_handle_irq_desc include/linux/irqdesc.h:173 [inline] handle_irq_desc kernel/irq/irqdesc.c:714 [inline] generic_handle_domain_irq+0x7c/0xc4 kernel/irq/irqdesc.c:770 __gic_handle_irq drivers/irqchip/irq-gic-v3.c:865 [inline] __gic_handle_irq_from_irqson drivers/irqchip/irq-gic-v3.c:916 [inline] gic_handle_irq+0x6c/0x190 drivers/irqchip/irq-gic-v3.c:960 call_on_irq_stack+0x24/0x4c arch/arm64/kernel/entry.S:891 do_interrupt_handler+0xd4/0x138 arch/arm64/kernel/entry-common.c:310 __el1_irq arch/arm64/kernel/entry-common.c:560 [inline] el1_interrupt+0x34/0x68 arch/arm64/kernel/entry-common.c:575 el1h_64_irq_handler+0x18/0x24 arch/arm64/kernel/entry-common.c:580 el1h_64_irq+0x6c/0x70 arch/arm64/kernel/entry.S:596 bytes_is_nonzero mm/kasan/generic.c:87 [inline] (P) memory_is_nonzero mm/kasan/generic.c:104 [inline] (P) memory_is_poisoned_n mm/kasan/generic.c:129 [inline] (P) memory_is_poisoned mm/kasan/generic.c:161 [inline] (P) check_region_inline mm/kasan/generic.c:180 [inline] (P) kasan_check_range+0x7c/0x2a8 mm/kasan/generic.c:189 (P) __kasan_check_read+0x20/0x30 mm/kasan/shadow.c:31 instrument_atomic_read include/linux/instrumented.h:68 [inline] atomic_read include/linux/atomic/atomic-instrumented.h:32 [inline] page_ref_count include/linux/page_ref.h:67 [inline] page_ref_add_unless include/linux/page_ref.h:237 [inline] folio_ref_add_unless include/linux/page_ref.h:248 [inline] folio_try_get+0xc8/0x26c include/linux/page_ref.h:264 next_uptodate_folio+0xd8/0x538 mm/filemap.c:3495 filemap_map_pages+0xdbc/0x1718 mm/filemap.c:3678 do_fault_around mm/memory.c:5280 [inline] do_read_fault mm/memory.c:5313 [inline] do_fault mm/memory.c:5456 [inline] do_pte_missing mm/memory.c:3979 [inline] handle_pte_fault mm/memory.c:5801 [inline] __handle_mm_fault+0x2df8/0x5ff0 mm/memory.c:5944 handle_mm_fault+0x29c/0x8b4 mm/memory.c:6112 do_page_fault+0x404/0x10a8 arch/arm64/mm/fault.c:647 do_translation_fault+0xc4/0x114 arch/arm64/mm/fault.c:783 do_mem_abort+0x74/0x200 arch/arm64/mm/fault.c:919 el0_da+0x60/0x178 arch/arm64/kernel/entry-common.c:604 el0t_64_sync_handler+0xcc/0x108 arch/arm64/kernel/entry-common.c:765 el0t_64_sync+0x198/0x19c arch/arm64/kernel/entry.S:600