general protection fault, probably for non-canonical address 0xdffffc000000003d: 0000 [#1] PREEMPT SMP KASAN KASAN: null-ptr-deref in range [0x00000000000001e8-0x00000000000001ef] CPU: 1 PID: 45 Comm: kcompactd0 Not tainted 6.1.0-syzkaller-09941-ge2ca6ba6ba01 #0 Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.14.0-2 04/01/2014 RIP: 0010:__lock_acquire+0xd83/0x56d0 kernel/locking/lockdep.c:4925 Code: 3d 0f 41 bf 01 00 00 00 0f 86 c8 00 00 00 89 05 93 56 3d 0f e9 bd 00 00 00 48 b8 00 00 00 00 00 fc ff df 4c 89 f2 48 c1 ea 03 <80> 3c 02 00 0f 85 4e 31 00 00 49 81 3e 60 65 f6 8f 0f 84 4c f3 ff RSP: 0018:ffffc900008d74a8 EFLAGS: 00010002 RAX: dffffc0000000000 RBX: 1ffff9200011aec5 RCX: 0000000000000000 RDX: 000000000000003d RSI: 0000000000000000 RDI: 0000000000000001 RBP: 0000000000000000 R08: 0000000000000001 R09: 0000000000000000 R10: fffffbfff1ce6862 R11: 0000000000000000 R12: 0000000000000000 R13: ffff88801562e100 R14: 00000000000001e8 R15: 0000000000000000 FS: 0000000000000000(0000) GS:ffff88802c700000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fc081fa8000 CR3: 000000006a5b7000 CR4: 0000000000150ee0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: lock_acquire kernel/locking/lockdep.c:5668 [inline] lock_acquire+0x1e3/0x630 kernel/locking/lockdep.c:5633 __raw_spin_lock include/linux/spinlock_api_smp.h:133 [inline] _raw_spin_lock+0x2e/0x40 kernel/locking/spinlock.c:154 spin_lock include/linux/spinlock.h:350 [inline] detach_extent_buffer_page+0x6c7/0xb40 fs/btrfs/extent_io.c:4051 btrfs_release_extent_buffer_pages+0x12b/0x400 fs/btrfs/extent_io.c:4120 release_extent_buffer+0x242/0x2b0 fs/btrfs/extent_io.c:4618 try_release_extent_buffer+0x307/0x8d0 fs/btrfs/extent_io.c:5717 btree_release_folio+0xc2/0x100 fs/btrfs/disk-io.c:909 filemap_release_folio+0x13f/0x1b0 mm/filemap.c:3967 btree_migrate_folio+0xa2/0x100 fs/btrfs/disk-io.c:874 move_to_new_folio+0x17a/0x6e0 mm/migrate.c:958 __unmap_and_move mm/migrate.c:1122 [inline] unmap_and_move mm/migrate.c:1194 [inline] migrate_pages+0x1de8/0x3e10 mm/migrate.c:1477 compact_zone+0x1c74/0x39f0 mm/compaction.c:2413 kcompactd_do_work+0x2f7/0x7c0 mm/compaction.c:2851 kcompactd+0x8c3/0xdf0 mm/compaction.c:2953 kthread+0x2e8/0x3a0 kernel/kthread.c:376 ret_from_fork+0x1f/0x30 arch/x86/entry/entry_64.S:306 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:__lock_acquire+0xd83/0x56d0 kernel/locking/lockdep.c:4925 Code: 3d 0f 41 bf 01 00 00 00 0f 86 c8 00 00 00 89 05 93 56 3d 0f e9 bd 00 00 00 48 b8 00 00 00 00 00 fc ff df 4c 89 f2 48 c1 ea 03 <80> 3c 02 00 0f 85 4e 31 00 00 49 81 3e 60 65 f6 8f 0f 84 4c f3 ff RSP: 0018:ffffc900008d74a8 EFLAGS: 00010002 RAX: dffffc0000000000 RBX: 1ffff9200011aec5 RCX: 0000000000000000 RDX: 000000000000003d RSI: 0000000000000000 RDI: 0000000000000001 RBP: 0000000000000000 R08: 0000000000000001 R09: 0000000000000000 R10: fffffbfff1ce6862 R11: 0000000000000000 R12: 0000000000000000 R13: ffff88801562e100 R14: 00000000000001e8 R15: 0000000000000000 FS: 0000000000000000(0000) GS:ffff88802c700000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fc081fa8000 CR3: 000000006a5b7000 CR4: 0000000000150ee0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess), 1 bytes skipped: 0: 0f 41 bf 01 00 00 00 cmovno 0x1(%rdi),%edi 7: 0f 86 c8 00 00 00 jbe 0xd5 d: 89 05 93 56 3d 0f mov %eax,0xf3d5693(%rip) # 0xf3d56a6 13: e9 bd 00 00 00 jmpq 0xd5 18: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax 1f: fc ff df 22: 4c 89 f2 mov %r14,%rdx 25: 48 c1 ea 03 shr $0x3,%rdx * 29: 80 3c 02 00 cmpb $0x0,(%rdx,%rax,1) <-- trapping instruction 2d: 0f 85 4e 31 00 00 jne 0x3181 33: 49 81 3e 60 65 f6 8f cmpq $0xffffffff8ff66560,(%r14) 3a: 0f .byte 0xf 3b: 84 4c f3 ff test %cl,-0x1(%rbx,%rsi,8)