general protection fault, probably for non-canonical address 0xdffffc000013a4c9: 0000 [#1] PREEMPT SMP KASAN
KASAN: probably user-memory-access in range [0x00000000009d2648-0x00000000009d264f]
CPU: 1 PID: 13564 Comm: syz-executor.3 Not tainted 5.15.0-rc6-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:_compound_head include/linux/page-flags.h:187 [inline]
RIP: 0010:PageSwapCache include/linux/page-flags.h:404 [inline]
RIP: 0010:free_swap_cache+0x28/0x310 mm/swap_state.c:291
Code: 00 00 41 57 41 56 41 55 41 54 49 89 fc 55 4d 8d 6c 24 08 53 e8 f9 5c c0 ff 4c 89 ea 48 b8 00 00 00 00 00 fc ff df 48 c1 ea 03 <80> 3c 02 00 0f 85 8f 02 00 00 49 8b 6c 24 08 31 ff 48 89 eb 83 e3
RSP: 0018:ffffc9000cccf6f8 EFLAGS: 00010206
RAX: dffffc0000000000 RBX: ffff888000112128 RCX: 0000000000000000
RDX: 000000000013a4c9 RSI: ffffffff81b67b27 RDI: 00000000009d2640
RBP: 0000000000000023 R08: 00000000000001fe R09: 0000000000000000
R10: ffffffff81b680f2 R11: 0000000000000000 R12: 00000000009d2640
R13: 00000000009d2648 R14: dffffc0000000000 R15: ffffc9000cccfab0
FS: 0000000000000000(0000) GS:ffff8880b9d00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000001b2c02a000 CR3: 00000000894d6000 CR4: 00000000003526e0
Call Trace:
free_pages_and_swap_cache+0x58/0x90 mm/swap_state.c:319
tlb_batch_pages_flush mm/mmu_gather.c:49 [inline]
tlb_flush_mmu_free mm/mmu_gather.c:242 [inline]
tlb_flush_mmu+0xe9/0x6b0 mm/mmu_gather.c:249
zap_pte_range mm/memory.c:1432 [inline]
zap_pmd_range mm/memory.c:1481 [inline]
zap_pud_range mm/memory.c:1510 [inline]
zap_p4d_range mm/memory.c:1531 [inline]
unmap_page_range+0x1c58/0x2a10 mm/memory.c:1552
unmap_single_vma+0x198/0x310 mm/memory.c:1597
unmap_vmas+0x16d/0x2f0 mm/memory.c:1629
exit_mmap+0x1d0/0x630 mm/mmap.c:3171
__mmput+0x122/0x4b0 kernel/fork.c:1115
mmput+0x58/0x60 kernel/fork.c:1136
exit_mm kernel/exit.c:501 [inline]
do_exit+0xabc/0x2a30 kernel/exit.c:812
do_group_exit+0x125/0x310 kernel/exit.c:922
get_signal+0x47f/0x2160 kernel/signal.c:2868
arch_do_signal_or_restart+0x2a9/0x1c40 arch/x86/kernel/signal.c:865
handle_signal_work kernel/entry/common.c:148 [inline]
exit_to_user_mode_loop kernel/entry/common.c:172 [inline]
exit_to_user_mode_prepare+0x17d/0x290 kernel/entry/common.c:207
__syscall_exit_to_user_mode_work kernel/entry/common.c:289 [inline]
syscall_exit_to_user_mode+0x19/0x60 kernel/entry/common.c:300
do_syscall_64+0x42/0xb0 arch/x86/entry/common.c:86
entry_SYSCALL_64_after_hwframe+0x44/0xae
RIP: 0033:0x7f1033a7aa39
Code: Unable to access opcode bytes at RIP 0x7f1033a7aa0f.
RSP: 002b:00007f1030ff0218 EFLAGS: 00000246 ORIG_RAX: 00000000000000ca
RAX: fffffffffffffe00 RBX: 00007f1033b7df68 RCX: 00007f1033a7aa39
RDX: 0000000000000000 RSI: 0000000000000080 RDI: 00007f1033b7df68
RBP: 00007f1033b7df60 R08: 0000000000000000 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000246 R12: 00007f1033b7df6c
R13: 00007f10340b1b2f R14: 00007f1030ff0300 R15: 0000000000022000
Modules linked in:
---[ end trace f66a07ef667bfbb2 ]---
RIP: 0010:_compound_head include/linux/page-flags.h:187 [inline]
RIP: 0010:PageSwapCache include/linux/page-flags.h:404 [inline]
RIP: 0010:free_swap_cache+0x28/0x310 mm/swap_state.c:291
Code: 00 00 41 57 41 56 41 55 41 54 49 89 fc 55 4d 8d 6c 24 08 53 e8 f9 5c c0 ff 4c 89 ea 48 b8 00 00 00 00 00 fc ff df 48 c1 ea 03 <80> 3c 02 00 0f 85 8f 02 00 00 49 8b 6c 24 08 31 ff 48 89 eb 83 e3
RSP: 0018:ffffc9000cccf6f8 EFLAGS: 00010206
RAX: dffffc0000000000 RBX: ffff888000112128 RCX: 0000000000000000
RDX: 000000000013a4c9 RSI: ffffffff81b67b27 RDI: 00000000009d2640
RBP: 0000000000000023 R08: 00000000000001fe R09: 0000000000000000
R10: ffffffff81b680f2 R11: 0000000000000000 R12: 00000000009d2640
R13: 00000000009d2648 R14: dffffc0000000000 R15: ffffc9000cccfab0
FS: 0000000000000000(0000) GS:ffff8880b9c00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f31a2e28000 CR3: 000000006fd46000 CR4: 00000000003526f0
----------------
Code disassembly (best guess):
0: 00 00 add %al,(%rax)
2: 41 57 push %r15
4: 41 56 push %r14
6: 41 55 push %r13
8: 41 54 push %r12
a: 49 89 fc mov %rdi,%r12
d: 55 push %rbp
e: 4d 8d 6c 24 08 lea 0x8(%r12),%r13
13: 53 push %rbx
14: e8 f9 5c c0 ff callq 0xffc05d12
19: 4c 89 ea mov %r13,%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 8f 02 00 00 jne 0x2c3
34: 49 8b 6c 24 08 mov 0x8(%r12),%rbp
39: 31 ff xor %edi,%edi
3b: 48 89 eb mov %rbp,%rbx
3e: 83 .byte 0x83
3f: e3 .byte 0xe3