================================================================== BUG: KASAN: use-after-free in user_mode arch/x86/include/asm/ptrace.h:131 [inline] BUG: KASAN: use-after-free in trace_page_fault_entries arch/x86/mm/fault.c:1516 [inline] BUG: KASAN: use-after-free in do_page_fault+0x66/0x330 arch/x86/mm/fault.c:1528 Read of size 8 at addr ffff8881d65efe40 by task syz.5.482/2231 CPU: 1 PID: 2231 Comm: syz.5.482 Not tainted 5.4.290-syzkaller-00017-g6b07fcd94a6a #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 Call Trace: The buggy address belongs to the page: page:ffffea0007597bc0 refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 flags: 0x8000000000000000() raw: 8000000000000000 ffffea00079b2b08 ffffea0007597b88 0000000000000000 raw: 0000000000000000 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner tracks the page as freed page last allocated via order 0, migratetype Unmovable, gfp_mask 0x102dc2(GFP_HIGHUSER|__GFP_NOWARN|__GFP_ZERO) set_page_owner include/linux/page_owner.h:31 [inline] post_alloc_hook mm/page_alloc.c:2165 [inline] prep_new_page+0x18f/0x370 mm/page_alloc.c:2171 get_page_from_freelist+0x2d13/0x2d90 mm/page_alloc.c:3794 __alloc_pages_nodemask+0x393/0x840 mm/page_alloc.c:4893 __vmalloc_area_node mm/vmalloc.c:2431 [inline] __vmalloc_node_range+0x384/0x710 mm/vmalloc.c:2499 vmalloc_user+0x70/0x80 mm/vmalloc.c:2629 kcov_mmap+0x28/0x120 kernel/kcov.c:450 call_mmap include/linux/fs.h:1996 [inline] mmap_region+0x110d/0x16f0 mm/mmap.c:1812 do_mmap+0x822/0xd30 mm/mmap.c:1581 do_mmap_pgoff include/linux/mm.h:2480 [inline] vm_mmap_pgoff+0x1b5/0x260 mm/util.c:528 ksys_mmap_pgoff+0x168/0x1e0 mm/mmap.c:1631 do_syscall_64+0xca/0x1c0 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x5c/0xc1 page last free stack trace: reset_page_owner include/linux/page_owner.h:24 [inline] free_pages_prepare mm/page_alloc.c:1176 [inline] free_pcp_prepare mm/page_alloc.c:1233 [inline] free_unref_page_prepare+0x297/0x380 mm/page_alloc.c:3085 free_unref_page mm/page_alloc.c:3134 [inline] free_the_page mm/page_alloc.c:4953 [inline] __free_pages+0xaf/0x140 mm/page_alloc.c:4961 __vunmap+0x75b/0x890 mm/vmalloc.c:2260 kcov_mmap+0x8c/0x120 kernel/kcov.c:474 call_mmap include/linux/fs.h:1996 [inline] mmap_region+0x110d/0x16f0 mm/mmap.c:1812 do_mmap+0x822/0xd30 mm/mmap.c:1581 do_mmap_pgoff include/linux/mm.h:2480 [inline] vm_mmap_pgoff+0x1b5/0x260 mm/util.c:528 ksys_mmap_pgoff+0x168/0x1e0 mm/mmap.c:1631 do_syscall_64+0xca/0x1c0 arch/x86/entry/common.c:290 entry_SYSCALL_64_after_hwframe+0x5c/0xc1 Memory state around the buggy address: ffff8881d65efd00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ffff8881d65efd80: ff ff ff ff ff ff ff ff 00 00 00 00 00 00 00 00 >ffff8881d65efe00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ^ ffff8881d65efe80: ff ff ff ff f1 f1 f1 f1 00 f2 f2 f2 04 f3 f3 f3 ffff8881d65eff00: ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ================================================================== PANIC: double fault, error_code: 0x0 CPU: 1 PID: 2231 Comm: syz.5.482 Tainted: G B 5.4.290-syzkaller-00017-g6b07fcd94a6a #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 02/12/2025 RIP: 0010:check_preemption_disabled+0x69/0x320 lib/smp_processor_id.c:13 Code: c7 44 24 30 70 cc 31 82 4c 8d 6c 24 20 49 c1 ed 03 48 b8 f1 f1 f1 f1 00 f3 f3 f3 48 b9 00 00 00 00 00 fc ff df 49 89 44 0d 00 22 7e 32 ff 65 8b 05 53 64 d0 7d 89 44 24 04 65 44 8b 35 9b c0 RSP: 0018:ffff8881d6256fe0 EFLAGS: 00010806 RAX: f3f3f300f1f1f1f1 RBX: ffffffff85eb6c58 RCX: dffffc0000000000 RDX: ffffc90007957000 RSI: ffffffff84fa5560 RDI: ffffffff84fa5520 RBP: ffff8881d6257090 R08: ffffffff8130280e R09: fffffbfff0c989a6 R10: 0000000000000000 R11: dffffc0000000001 R12: ffffffff84fa5520 R13: 1ffff1103ac4ae00 R14: ffff8881d6257100 R15: ffffffff84fa5560 FS: 00007fa86435f6c0(0000) GS:ffff8881f6f00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: ffff8881d6256fd8 CR3: 00000001f5c2a000 CR4: 00000000003406a0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000600 Call Trace: <#DF> ---------------- Code disassembly (best guess): 0: c7 44 24 30 70 cc 31 movl $0x8231cc70,0x30(%rsp) 7: 82 8: 4c 8d 6c 24 20 lea 0x20(%rsp),%r13 d: 49 c1 ed 03 shr $0x3,%r13 11: 48 b8 f1 f1 f1 f1 00 movabs $0xf3f3f300f1f1f1f1,%rax 18: f3 f3 f3 1b: 48 b9 00 00 00 00 00 movabs $0xdffffc0000000000,%rcx 22: fc ff df 25: 49 89 44 0d 00 mov %rax,0x0(%r13,%rcx,1) * 2a: e8 22 7e 32 ff call 0xff327e51 <-- trapping instruction 2f: 65 8b 05 53 64 d0 7d mov %gs:0x7dd06453(%rip),%eax # 0x7dd06489 36: 89 44 24 04 mov %eax,0x4(%rsp) 3a: 65 gs 3b: 44 rex.R 3c: 8b .byte 0x8b 3d: 35 .byte 0x35 3e: 9b fwait 3f: c0 .byte 0xc0