BUG: sleeping function called from invalid context at mm/util.c:761 in_atomic(): 1, irqs_disabled(): 0, non_block: 0, pid: 1664, name: khugepaged 1 lock held by khugepaged/1664: #0: ffff88801115e670 (&mapping->private_lock){+.+.}-{2:2}, at: spin_lock include/linux/spinlock.h:359 [inline] #0: ffff88801115e670 (&mapping->private_lock){+.+.}-{2:2}, at: __buffer_migrate_page+0x3a8/0xa80 mm/migrate.c:722 Preemption disabled at: [<0000000000000000>] 0x0 CPU: 1 PID: 1664 Comm: khugepaged Not tainted 5.14.0-rc2-next-20210722-syzkaller #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:105 ___might_sleep.cold+0x1f3/0x239 kernel/sched/core.c:9182 folio_copy+0x10c/0x1a0 mm/util.c:761 folio_migrate_copy+0x19/0x30 mm/migrate.c:619 __buffer_migrate_page+0x820/0xa80 mm/migrate.c:757 move_to_new_page+0x339/0xf00 mm/migrate.c:904 __unmap_and_move mm/migrate.c:1069 [inline] unmap_and_move mm/migrate.c:1210 [inline] migrate_pages+0x2867/0x3890 mm/migrate.c:1487 compact_zone+0x1abb/0x3860 mm/compaction.c:2393 compact_zone_order+0x165/0x270 mm/compaction.c:2513 try_to_compact_pages+0x275/0x7e0 mm/compaction.c:2579 __alloc_pages_direct_compact+0x132/0x510 mm/page_alloc.c:4356 __alloc_pages_slowpath.constprop.0+0x92f/0x21b0 mm/page_alloc.c:5022 __alloc_pages+0x412/0x500 mm/page_alloc.c:5387 __alloc_pages_node include/linux/gfp.h:566 [inline] khugepaged_alloc_page+0xa0/0x170 mm/khugepaged.c:881 collapse_huge_page mm/khugepaged.c:1084 [inline] khugepaged_scan_pmd mm/khugepaged.c:1367 [inline] khugepaged_scan_mm_slot mm/khugepaged.c:2149 [inline] khugepaged_do_scan mm/khugepaged.c:2230 [inline] khugepaged+0x3104/0x5390 mm/khugepaged.c:2275 kthread+0x3e5/0x4d0 kernel/kthread.c:319 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:295