syzbot


BUG: corrupted list in __free_one_page

Status: closed as invalid on 2018/09/05 12:51
Subsystems: mm
[Documentation on labels]
First crash: 2688d, last: 2575d

Sample crash report:
RBP: 00000000009300a0 R08: 0000000020000000 R09: 000000000000001c
R10: 0000000000000040 R11: 0000000000000246 R12: 0000000000000005
R13: 00000000004d3d20 R14: 00000000004c8999 R15: 0000000000000006
list_add corruption. next->prev should be prev (ffff88021fffab98), but was ffff88021fc25630. (next=ffffea0007a00608).
------------[ cut here ]------------
kernel BUG at lib/list_debug.c:25!
invalid opcode: 0000 [#1] SMP PTI
CPU: 0 PID: 3433 Comm: syz-executor7 Not tainted 4.18.0-rc8+ #32
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011
RIP: 0010:__list_add_valid+0x40/0xa0 lib/list_debug.c:23
Code: 48 8b 11 4c 39 c2 75 34 48 39 ce 74 4f 4c 39 c6 74 4a b0 01 5d c3 48 c7 c7 c4 22 2f 83 31 c0 48 89 ce 4c 89 c1 e8 00 b7 6c ff <0f> 0b 0f 1f 40 00 66 2e 0f 1f 84 00 00 00 00 00 eb fe 48 c7 c7 27 
RSP: 0018:ffff880207e1faf8 EFLAGS: 00010082
RAX: 0000000000000075 RBX: ffffea0007a00608 RCX: ffff8802040a44c0
RDX: 0000000000000000 RSI: ffff88021fc152f0 RDI: ffff88021fc152f0
RBP: ffff880207e1faf8 R08: 0000000000000000 R09: ffffffff83a396f1
R10: ffff8802097c08c0 R11: ffffffff81d91220 R12: ffffea0007affe00
R13: ffff88021fffaa00 R14: 0000000000000003 R15: ffff88021fffab98
FS:  0000000000bcc940(0000) GS:ffff88021fc00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000625208 CR3: 000000020e47c000 CR4: 00000000001406f0
DR0: 0000000020000000 DR1: 0000000020000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000600
Call Trace:
 __list_add include/linux/list.h:60 [inline]
 list_add include/linux/list.h:79 [inline]
 __free_one_page+0x3d6/0x410 mm/page_alloc.c:873
 free_one_page mm/page_alloc.c:1173 [inline]
 __free_pages_ok+0x1e2/0x440 mm/page_alloc.c:1257
 free_compound_page+0x17/0x20 mm/page_alloc.c:571
 __put_compound_page mm/swap.c:96 [inline]
 __put_page+0x6d/0x80 mm/swap.c:112
 put_page include/linux/mm.h:942 [inline]
 __skb_frag_unref include/linux/skbuff.h:2767 [inline]
 skb_release_data+0x88/0x1d0 net/core/skbuff.c:565
 skb_release_all net/core/skbuff.c:628 [inline]
 __kfree_skb+0x31/0xc0 net/core/skbuff.c:642
 sk_wmem_free_skb include/net/sock.h:1430 [inline]
 tcp_write_queue_purge+0xdd/0x260 net/ipv4/tcp.c:2527
 tcp_disconnect+0x1b8/0x4f0 net/ipv4/tcp.c:2567
 tcp_close+0x4f0/0x500 net/ipv4/tcp.c:2363
 tls_sk_proto_close+0x2b6/0x310 net/tls/tls_main.c:303
 inet_release+0x7e/0x90 net/ipv4/af_inet.c:427
 inet6_release+0x35/0x50 net/ipv6/af_inet6.c:459
 __sock_release net/socket.c:600 [inline]
 sock_close+0x48/0xd0 net/socket.c:1151
 __fput+0x110/0x280 fs/file_table.c:209
 ____fput+0x15/0x20 fs/file_table.c:243
 task_work_run+0xb4/0xe0 kernel/task_work.c:113
 tracehook_notify_resume include/linux/tracehook.h:192 [inline]
 exit_to_usermode_loop arch/x86/entry/common.c:166 [inline]
 prepare_exit_to_usermode+0x144/0x170 arch/x86/entry/common.c:197
 syscall_return_slowpath+0x3f/0x270 arch/x86/entry/common.c:268
 do_syscall_64+0x6d/0x90 arch/x86/entry/common.c:293
 entry_SYSCALL_64_after_hwframe+0x44/0xa9
RIP: 0033:0x410c41
Code: 75 14 b8 03 00 00 00 0f 05 48 3d 01 f0 ff ff 0f 83 34 19 00 00 c3 48 83 ec 08 e8 0a fc ff ff 48 89 04 24 b8 03 00 00 00 0f 05 <48> 8b 3c 24 48 89 c2 e8 53 fc ff ff 48 89 d0 48 83 c4 08 48 3d 01 
RSP: 002b:0000000000a3fdc0 EFLAGS: 00000293 ORIG_RAX: 0000000000000003
RAX: 0000000000000000 RBX: 0000000000000005 RCX: 0000000000410c41
RDX: 0000000000000000 RSI: 0000000000731030 RDI: 0000000000000004
RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000001
R10: 0000000000a3fcf0 R11: 0000000000000293 R12: 000000000000000a
R13: 00000000000e6af5 R14: 0000000000000c1f R15: badc0ffeebadface
Modules linked in:
Dumping ftrace buffer:
   (ftrace buffer empty)
---[ end trace a2e418c695ac82e5 ]---
RIP: 0010:__list_add_valid+0x40/0xa0 lib/list_debug.c:23
Code: 48 8b 11 4c 39 c2 75 34 48 39 ce 74 4f 4c 39 c6 74 4a b0 01 5d c3 48 c7 c7 c4 22 2f 83 31 c0 48 89 ce 4c 89 c1 e8 00 b7 6c ff <0f> 0b 0f 1f 40 00 66 2e 0f 1f 84 00 00 00 00 00 eb fe 48 c7 c7 27 
RSP: 0018:ffff880207e1faf8 EFLAGS: 00010082
RAX: 0000000000000075 RBX: ffffea0007a00608 RCX: ffff8802040a44c0
RDX: 0000000000000000 RSI: ffff88021fc152f0 RDI: ffff88021fc152f0
RBP: ffff880207e1faf8 R08: 0000000000000000 R09: ffffffff83a396f1
R10: ffff8802097c08c0 R11: ffffffff81d91220 R12: ffffea0007affe00
R13: ffff88021fffaa00 R14: 0000000000000003 R15: ffff88021fffab98
FS:  0000000000bcc940(0000) GS:ffff88021fc00000(0000) knlGS:0000000000000000
CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000625208 CR3: 000000020e47c000 CR4: 00000000001406f0
DR0: 0000000020000000 DR1: 0000000020000000 DR2: 0000000000000000
DR3: 0000000000000000 DR6: 00000000ffff0ff0 DR7: 0000000000000600

Crashes (18):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2018/08/09 19:11 https://github.com/google/kmsan.git master 0cc51dc9a291 1fb62d58 .config console log report ci-upstream-kmsan-gce
2018/06/30 18:33 https://github.com/google/kmsan.git master 123906095e30 dba0b50e .config console log report ci-upstream-kmsan-gce
2018/06/30 06:08 https://github.com/google/kmsan.git master 123906095e30 dba0b50e .config console log report ci-upstream-kmsan-gce
2018/06/29 00:48 https://github.com/google/kmsan.git master 123906095e30 dba0b50e .config console log report ci-upstream-kmsan-gce
2018/06/21 08:51 https://github.com/google/kmsan.git master 123906095e30 095ef806 .config console log report ci-upstream-kmsan-gce
2018/06/17 08:10 https://github.com/google/kmsan.git master 88e0e95b30f1 27c5f59f .config console log report ci-upstream-kmsan-gce
2018/06/15 21:41 https://github.com/google/kmsan.git master 88e0e95b30f1 27c5f59f .config console log report ci-upstream-kmsan-gce
2018/06/15 01:24 https://github.com/google/kmsan.git master 88e0e95b30f1 27c5f59f .config console log report ci-upstream-kmsan-gce
2018/06/01 22:57 https://github.com/google/kmsan.git master 8fc8ecd1c58a 2f93b54f .config console log report ci-upstream-kmsan-gce
2018/05/26 12:28 https://github.com/google/kmsan.git master 1b9cd4eccac9 f48c20b8 .config console log report ci-upstream-kmsan-gce
2018/05/25 18:55 https://github.com/google/kmsan.git master 1b9cd4eccac9 f48c20b8 .config console log report ci-upstream-kmsan-gce
2018/05/23 20:39 https://github.com/google/kmsan.git master 1b9cd4eccac9 f48c20b8 .config console log report ci-upstream-kmsan-gce
2018/05/15 05:41 https://github.com/google/kmsan.git master 450487484278 d2284dda .config console log report ci-upstream-kmsan-gce
2018/05/09 19:35 https://github.com/google/kmsan.git master 74ee2200b89f 12c7428a .config console log report ci-upstream-kmsan-gce
2018/05/05 05:08 https://github.com/google/kmsan.git master d2d741e5d189 9ce14f4b .config console log report ci-upstream-kmsan-gce
2018/04/29 02:00 https://github.com/google/kmsan.git master d2d741e5d189 d5a5d045 .config console log report ci-upstream-kmsan-gce
2018/04/25 08:34 https://github.com/google/kmsan.git master d2d741e5d189 73417389 .config console log report ci-upstream-kmsan-gce
2018/04/18 19:16 https://github.com/google/kmsan.git master 48c6a2b0ab1b 52643b44 .config console log report ci-upstream-kmsan-gce
* Struck through repros no longer work on HEAD.