general protection fault, probably for non-canonical address 0xdffffc00000000fc: 0000 [#1] PREEMPT SMP KASAN KASAN: null-ptr-deref in range [0x00000000000007e0-0x00000000000007e7] CPU: 1 PID: 29 Comm: kcompactd0 Not tainted 6.5.0-rc1-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 08/04/2023 RIP: 0010:mm_has_notifiers include/linux/mmu_notifier.h:282 [inline] RIP: 0010:mmu_notifier_invalidate_range include/linux/mmu_notifier.h:497 [inline] RIP: 0010:arch_tlbbatch_flush+0x3d8/0x560 arch/x86/mm/tlb.c:1268 Code: 03 80 3c 02 00 0f 85 f3 00 00 00 48 8b 9b f0 04 00 00 48 b8 00 00 00 00 00 fc ff df 48 8d bb e0 07 00 00 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 c0 00 00 00 48 83 bb e0 07 00 00 00 75 62 48 83 RSP: 0018:ffffc90000a5f5f0 EFLAGS: 00010206 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 00000000000000fc RSI: ffffffff81315875 RDI: 00000000000007e0 RBP: 0000000000000001 R08: 0000000000000005 R09: 0000000000000000 R10: 0000000080000001 R11: 0000000000000000 R12: ffff8880ba539740 R13: 0000000000000001 R14: ffffc90000a5f8f8 R15: ffffea00001fbfc8 FS: 0000000000000000(0000) GS:ffff8880ba500000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f478e89d1a5 CR3: 0000000008116000 CR4: 00000000003506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: try_to_unmap_flush+0x6b/0xf0 mm/rmap.c:621 migrate_pages_batch+0x2524/0x2c70 mm/migrate.c:1740 migrate_pages_sync mm/migrate.c:1822 [inline] migrate_pages+0x1a01/0x2640 mm/migrate.c:1926 compact_zone+0x1cee/0x3f60 mm/compaction.c:2512 proactive_compact_node+0x118/0x1d0 mm/compaction.c:2777 kcompactd+0x710/0xd80 mm/compaction.c:3097 kthread+0x33a/0x430 kernel/kthread.c:389 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:308 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:mm_has_notifiers include/linux/mmu_notifier.h:282 [inline] RIP: 0010:mmu_notifier_invalidate_range include/linux/mmu_notifier.h:497 [inline] RIP: 0010:arch_tlbbatch_flush+0x3d8/0x560 arch/x86/mm/tlb.c:1268 Code: 03 80 3c 02 00 0f 85 f3 00 00 00 48 8b 9b f0 04 00 00 48 b8 00 00 00 00 00 fc ff df 48 8d bb e0 07 00 00 48 89 fa 48 c1 ea 03 <80> 3c 02 00 0f 85 c0 00 00 00 48 83 bb e0 07 00 00 00 75 62 48 83 RSP: 0018:ffffc90000a5f5f0 EFLAGS: 00010206 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 0000000000000000 RDX: 00000000000000fc RSI: ffffffff81315875 RDI: 00000000000007e0 RBP: 0000000000000001 R08: 0000000000000005 R09: 0000000000000000 R10: 0000000080000001 R11: 0000000000000000 R12: ffff8880ba539740 R13: 0000000000000001 R14: ffffc90000a5f8f8 R15: ffffea00001fbfc8 FS: 0000000000000000(0000) GS:ffff8880ba500000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f478e89d1a5 CR3: 0000000015e20000 CR4: 00000000003506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess), 1 bytes skipped: 0: 80 3c 02 00 cmpb $0x0,(%rdx,%rax,1) 4: 0f 85 f3 00 00 00 jne 0xfd a: 48 8b 9b f0 04 00 00 mov 0x4f0(%rbx),%rbx 11: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax 18: fc ff df 1b: 48 8d bb e0 07 00 00 lea 0x7e0(%rbx),%rdi 22: 48 89 fa mov %rdi,%rdx 25: 48 c1 ea 03 shr $0x3,%rdx * 29: 80 3c 02 00 cmpb $0x0,(%rdx,%rax,1) <-- trapping instruction 2d: 0f 85 c0 00 00 00 jne 0xf3 33: 48 83 bb e0 07 00 00 cmpq $0x0,0x7e0(%rbx) 3a: 00 3b: 75 62 jne 0x9f 3d: 48 rex.W 3e: 83 .byte 0x83