BUG: Bad page state in process syz-executor.3 pfn:49401
page:ffffea0001250040 count:0 mapcount:1 mapping:dead000000000400 index:0x20001 compound_mapcount: 1
flags: 0xfff00000000000()
raw: 00fff00000000000 ffffea0001250001 0000000001250903 dead000000000400
raw: 0000000000000000 0000000000000000 00000000ffffffff 0000000000000000
page dumped because: nonzero compound_mapcount
Modules linked in:
CPU: 0 PID: 13910 Comm: syz-executor.3 Not tainted 4.19.211-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
Call Trace:
__dump_stack lib/dump_stack.c:77 [inline]
dump_stack+0x1fc/0x2ef lib/dump_stack.c:118
bad_page.cold+0xdb/0x100 mm/page_alloc.c:571
free_tail_pages_check mm/page_alloc.c:977 [inline]
free_pages_prepare mm/page_alloc.c:1032 [inline]
__free_pages_ok+0xac4/0xd30 mm/page_alloc.c:1279
__put_page+0xe2/0x3a0 mm/swap.c:112
put_page include/linux/mm.h:963 [inline]
do_huge_pmd_wp_page+0x1e75/0x5370 mm/huge_memory.c:1418
wp_huge_pmd mm/memory.c:4076 [inline]
__handle_mm_fault+0x2297/0x41c0 mm/memory.c:4289
handle_mm_fault+0x436/0xb10 mm/memory.c:4336
__do_page_fault+0x68e/0xd60 arch/x86/mm/fault.c:1412
page_fault+0x1e/0x30 arch/x86/entry/entry_64.S:1205
RIP: 0010:__put_user_4+0x1c/0x30 arch/x86/lib/putuser.S:70
Code: 01 ca c3 66 66 2e 0f 1f 84 00 00 00 00 00 65 48 8b 1c 25 c0 df 01 00 48 8b 9b 98 14 00 00 48 83 eb 03 48 39 d9 73 3c 0f 01 cb <89> 01 31 c0 0f 01 ca c3 66 66 2e 0f 1f 84 00 00 00 00 00 90 65 48
RSP: 0018:ffff88805186fd60 EFLAGS: 00050297
RAX: 0000000000000070 RBX: 00007fffffffeffd RCX: 0000000020000284
RDX: 0000000000000000 RSI: ffffffff817664c2 RDI: 0000000000000286
RBP: 00000000200002f0 R08: ffffffff8cd254f0 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000
R13: ffff88805186fe40 R14: 000000000000009d R15: 0000000020000280
perf_copy_attr+0x6c0/0x7a0 kernel/events/core.c:10391
__do_sys_perf_event_open kernel/events/core.c:10571 [inline]
__se_sys_perf_event_open+0xb4/0x2720 kernel/events/core.c:10549
do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x7f981ff58109
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:00007f981e8cd168 EFLAGS: 00000246 ORIG_RAX: 000000000000012a
RAX: ffffffffffffffda RBX: 00007f982006af60 RCX: 00007f981ff58109
RDX: 0000000000000005 RSI: ffffffffffffffff RDI: 0000000020000280
RBP: 00007f981ffb208d R08: 000000000000000e R09: 0000000000000000
R10: ffffffffffffffff R11: 0000000000000246 R12: 0000000000000000
R13: 00007ffe074c262f R14: 00007f981e8cd300 R15: 0000000000022000
page:ffffea0001250000 count:0 mapcount:-1 mapping:0000000000000000 index:0x20000 compound_mapcount: 0
flags: 0xfff0000004800c(referenced|uptodate|head|swapbacked)
raw: 00fff0000004800c dead000000000100 dead000000000200 0000000000000000
raw: 0000000000020000 0000000000000000 00000000fffffffe 0000000000000000
page dumped because: VM_BUG_ON_PAGE(page_mapcount(page) < 0)
------------[ cut here ]------------
kernel BUG at mm/huge_memory.c:1781!
invalid opcode: 0000 [#1] PREEMPT SMP KASAN
CPU: 1 PID: 13968 Comm: syz-executor.3 Tainted: G B 4.19.211-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:zap_huge_pmd+0xd44/0xf30 mm/huge_memory.c:1781
Code: ee ff 0f 0b e8 7d 67 c7 ff 48 8b 1c 24 48 83 eb 01 e9 f2 f8 ff ff e8 6b 67 c7 ff 48 c7 c6 20 b3 73 88 4c 89 ef e8 1c f9 ee ff <0f> 0b e8 55 67 c7 ff 0f 0b e8 4e 67 c7 ff 48 8b 1c 24 48 83 eb 01
RSP: 0018:ffff888052317a00 EFLAGS: 00010293
RAX: ffff8880ab0fe000 RBX: 00000000ffffffff RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff819b1e14 RDI: ffffea0001250038
RBP: ffff888052317ca0 R08: 000000000000003c R09: 0000000000000000
R10: 0000000000000005 R11: ffffffff8c66505b R12: ffff88809995c800
R13: ffffea0001250000 R14: ffff888097b09b58 R15: ffffffff89cfb4e0
FS: 0000000000000000(0000) GS:ffff8880ba100000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f981ff58109 CR3: 00000000a6119000 CR4: 00000000003406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
Call Trace:
zap_pmd_range mm/memory.c:1439 [inline]
zap_pud_range mm/memory.c:1492 [inline]
zap_p4d_range mm/memory.c:1513 [inline]
unmap_page_range+0xfd4/0x2c50 mm/memory.c:1534
unmap_single_vma+0x198/0x300 mm/memory.c:1579
unmap_vmas+0xa9/0x180 mm/memory.c:1609
exit_mmap+0x2b9/0x530 mm/mmap.c:3093
__mmput kernel/fork.c:1016 [inline]
mmput+0x14e/0x4a0 kernel/fork.c:1037
exit_mm kernel/exit.c:549 [inline]
do_exit+0xaec/0x2be0 kernel/exit.c:857
__do_sys_exit kernel/exit.c:936 [inline]
__se_sys_exit kernel/exit.c:934 [inline]
__x64_sys_exit+0x3e/0x50 kernel/exit.c:934
do_syscall_64+0xf9/0x620 arch/x86/entry/common.c:293
entry_SYSCALL_64_after_hwframe+0x49/0xbe
RIP: 0033:0x7f981ff58109
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:00007f981e8ac118 EFLAGS: 00000246 ORIG_RAX: 000000000000003c
RAX: ffffffffffffffda RBX: 00007f982006b030 RCX: 00007f981ff58109
RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000
RBP: 00007f981ffb208d R08: 0000000020000380 R09: 0000000020000380
R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000
R13: 00007ffe074c262f R14: 00007f981e8ac300 R15: 0000000000022000
Modules linked in:
---[ end trace 30e4b10386c09d57 ]---
RIP: 0010:zap_huge_pmd+0xd44/0xf30 mm/huge_memory.c:1781
Code: ee ff 0f 0b e8 7d 67 c7 ff 48 8b 1c 24 48 83 eb 01 e9 f2 f8 ff ff e8 6b 67 c7 ff 48 c7 c6 20 b3 73 88 4c 89 ef e8 1c f9 ee ff <0f> 0b e8 55 67 c7 ff 0f 0b e8 4e 67 c7 ff 48 8b 1c 24 48 83 eb 01
RSP: 0018:ffff888052317a00 EFLAGS: 00010293
RAX: ffff8880ab0fe000 RBX: 00000000ffffffff RCX: 0000000000000000
RDX: 0000000000000000 RSI: ffffffff819b1e14 RDI: ffffea0001250038
RBP: ffff888052317ca0 R08: 000000000000003c R09: 0000000000000000
R10: 0000000000000005 R11: ffffffff8c66505b R12: ffff88809995c800
R13: ffffea0001250000 R14: ffff888097b09b58 R15: ffffffff89cfb4e0
FS: 0000000000000000(0000) GS:ffff8880ba100000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f981ff58109 CR3: 00000000a6119000 CR4: 00000000003406e0
DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400
----------------
Code disassembly (best guess):
0: 01 ca add %ecx,%edx
2: c3 retq
3: 66 66 2e 0f 1f 84 00 data16 nopw %cs:0x0(%rax,%rax,1)
a: 00 00 00 00
e: 65 48 8b 1c 25 c0 df mov %gs:0x1dfc0,%rbx
15: 01 00
17: 48 8b 9b 98 14 00 00 mov 0x1498(%rbx),%rbx
1e: 48 83 eb 03 sub $0x3,%rbx
22: 48 39 d9 cmp %rbx,%rcx
25: 73 3c jae 0x63
27: 0f 01 cb stac
* 2a: 89 01 mov %eax,(%rcx) <-- trapping instruction
2c: 31 c0 xor %eax,%eax
2e: 0f 01 ca clac
31: c3 retq
32: 66 66 2e 0f 1f 84 00 data16 nopw %cs:0x0(%rax,%rax,1)
39: 00 00 00 00
3d: 90 nop
3e: 65 gs
3f: 48 rex.W