general protection fault, probably for non-canonical address 0xdffffc0000000000: 0000 [#1] PREEMPT SMP KASAN KASAN: null-ptr-deref in range [0x0000000000000000-0x0000000000000007] CPU: 1 PID: 24796 Comm: syz-executor.3 Not tainted 6.0.0-rc6-next-20220923-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/22/2022 RIP: 0010:PagePoisoned include/linux/page-flags.h:304 [inline] RIP: 0010:PageHead include/linux/page-flags.h:787 [inline] RIP: 0010:PageHeadHuge+0x1d/0x200 mm/hugetlb.c:1892 Code: ff 66 66 2e 0f 1f 84 00 00 00 00 00 90 41 54 55 48 89 fd 53 e8 64 af b9 ff 48 89 ea 48 b8 00 00 00 00 00 fc ff df 48 c1 ea 03 <80> 3c 02 00 0f 85 a2 01 00 00 48 8b 5d 00 48 c7 c7 ff ff ff ff 48 RSP: 0018:ffffc9000379f430 EFLAGS: 00010246 RAX: dffffc0000000000 RBX: ffffc9000379f618 RCX: ffffc9000c253000 RDX: 0000000000000000 RSI: ffffffff81c2e49c RDI: 0000000000000000 RBP: 0000000000000000 R08: 0000000000000005 R09: 0000000000000000 R10: 0000000000000000 R11: ffffc9000379fa10 R12: ffffc9000379f628 R13: 0000000000000000 R14: 0000000000000000 R15: 000000000000016c FS: 00007f04d43a3700(0000) GS:ffff8880b9b00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 000000002016d000 CR3: 000000002151b000 CR4: 00000000003506e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: folio_test_hugetlb include/linux/page-flags.h:831 [inline] folio_file_page include/linux/pagemap.h:683 [inline] shmem_fault+0x27c/0x8a0 mm/shmem.c:2130 __do_fault+0x107/0x600 mm/memory.c:4191 do_read_fault mm/memory.c:4542 [inline] do_fault mm/memory.c:4671 [inline] handle_pte_fault mm/memory.c:4943 [inline] __handle_mm_fault+0x2184/0x3a40 mm/memory.c:5085 handle_mm_fault+0x1c8/0x780 mm/memory.c:5206 do_user_addr_fault+0x475/0x1210 arch/x86/mm/fault.c:1428 handle_page_fault arch/x86/mm/fault.c:1519 [inline] exc_page_fault+0x94/0x170 arch/x86/mm/fault.c:1575 asm_exc_page_fault+0x22/0x30 arch/x86/include/asm/idtentry.h:570 RIP: 0010:copy_user_enhanced_fast_string+0xa/0x40 arch/x86/lib/copy_user_64.S:166 Code: ff c9 75 f2 89 d1 c1 e9 03 83 e2 07 f3 48 a5 89 d1 f3 a4 31 c0 0f 01 ca c3 8d 0c ca 89 ca eb 20 0f 01 cb 83 fa 40 72 38 89 d1 a4 31 c0 0f 01 ca c3 89 ca eb 0a 66 2e 0f 1f 84 00 00 00 00 00 RSP: 0018:ffffc9000379f898 EFLAGS: 00050206 RAX: 0000000000000001 RBX: 0000000000001000 RCX: 0000000000000d80 RDX: 0000000000001000 RSI: 000000002016c000 RDI: ffff888094616280 RBP: 00007fffffffe000 R08: 0000000000000001 R09: ffff888094616fff R10: ffffed10128c2dff R11: 0000000000000000 R12: ffff888094616000 R13: 000000002016bd80 R14: ffffc9000379fca0 R15: 0000000000001000 copy_user_generic arch/x86/include/asm/uaccess_64.h:37 [inline] raw_copy_from_user arch/x86/include/asm/uaccess_64.h:52 [inline] copyin lib/iov_iter.c:183 [inline] copyin+0xf6/0x120 lib/iov_iter.c:175 _copy_from_iter+0x1ca/0xf40 lib/iov_iter.c:631 copy_page_from_iter lib/iov_iter.c:752 [inline] copy_page_from_iter+0x9b/0x110 lib/iov_iter.c:741 skb_copy_datagram_from_iter+0x40d/0x6c0 net/core/datagram.c:573 unix_stream_sendmsg+0x414/0x1430 net/unix/af_unix.c:2215 sock_sendmsg_nosec net/socket.c:714 [inline] sock_sendmsg+0xcf/0x120 net/socket.c:734 sock_write_iter+0x291/0x3d0 net/socket.c:1108 call_write_iter include/linux/fs.h:2190 [inline] new_sync_write fs/read_write.c:491 [inline] vfs_write+0x9e9/0xdd0 fs/read_write.c:578 ksys_write+0x1e8/0x250 fs/read_write.c:631 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x35/0xb0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x63/0xcd RIP: 0033:0x7f04d328a5a9 Code: ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 b8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007f04d43a3168 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 RAX: ffffffffffffffda RBX: 00007f04d33abf80 RCX: 00007f04d328a5a9 RDX: 000000007fffffff RSI: 00000000200000c0 RDI: 0000000000000003 RBP: 00007f04d32e5580 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007ffce815f5ff R14: 00007f04d43a3300 R15: 0000000000022000 Modules linked in: ---[ end trace 0000000000000000 ]--- RIP: 0010:PagePoisoned include/linux/page-flags.h:304 [inline] RIP: 0010:PageHead include/linux/page-flags.h:787 [inline] RIP: 0010:PageHeadHuge+0x1d/0x200 mm/hugetlb.c:1892 Code: ff 66 66 2e 0f 1f 84 00 00 00 00 00 90 41 54 55 48 89 fd 53 e8 64 af b9 ff 48 89 ea 48 b8 00 00 00 00 00 fc ff df 48 c1 ea 03 <80> 3c 02 00 0f 85 a2 01 00 00 48 8b 5d 00 48 c7 c7 ff ff ff ff 48 RSP: 0018:ffffc9000379f430 EFLAGS: 00010246 RAX: dffffc0000000000 RBX: ffffc9000379f618 RCX: ffffc9000c253000 RDX: 0000000000000000 RSI: ffffffff81c2e49c RDI: 0000000000000000 RBP: 0000000000000000 R08: 0000000000000005 R09: 0000000000000000 R10: 0000000000000000 R11: ffffc9000379fa10 R12: ffffc9000379f628 R13: 0000000000000000 R14: 0000000000000000 R15: 000000000000016c FS: 00007f04d43a3700(0000) GS:ffff8880b9a00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f1840d81058 CR3: 000000002151b000 CR4: 00000000003526f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess): 0: ff 66 66 jmpq *0x66(%rsi) 3: 2e 0f 1f 84 00 00 00 nopl %cs:0x0(%rax,%rax,1) a: 00 00 c: 90 nop d: 41 54 push %r12 f: 55 push %rbp 10: 48 89 fd mov %rdi,%rbp 13: 53 push %rbx 14: e8 64 af b9 ff callq 0xffb9af7d 19: 48 89 ea mov %rbp,%rdx 1c: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax 23: fc ff df 26: 48 c1 ea 03 shr $0x3,%rdx * 2a: 80 3c 02 00 cmpb $0x0,(%rdx,%rax,1) <-- trapping instruction 2e: 0f 85 a2 01 00 00 jne 0x1d6 34: 48 8b 5d 00 mov 0x0(%rbp),%rbx 38: 48 c7 c7 ff ff ff ff mov $0xffffffffffffffff,%rdi 3f: 48 rex.W