bisecting fixing commit since a03957ab0fd5d7d03b512a72ab9106a1749f556e building syzkaller on 1bfa09b9672821334a7ed926244ebc39910b84f4 testing commit a03957ab0fd5d7d03b512a72ab9106a1749f556e with gcc (GCC) 8.1.0 kernel signature: ad16a6c63f3668dec72dd228ff0f5c081233022c4dbc5b79cdd0689cd7bd048f run #0: crashed: general protection fault in corrupted run #1: crashed: general protection fault in flex_array_get run #2: crashed: general protection fault in flex_array_get run #3: crashed: general protection fault in flex_array_get run #4: crashed: general protection fault in flex_array_get run #5: crashed: general protection fault in flex_array_get run #6: crashed: general protection fault in corrupted run #7: crashed: general protection fault in flex_array_get run #8: crashed: general protection fault in flex_array_get run #9: crashed: general protection fault in flex_array_get testing current HEAD a1b977b49b66c75e6c51a515f6700371ae720217 testing commit a1b977b49b66c75e6c51a515f6700371ae720217 with gcc (GCC) 8.1.0 kernel signature: adbae7b3ae94125cde6f631bc07c5da8c3b254312222b043252845167a075f5e run #0: crashed: general protection fault in flex_array_get run #1: crashed: general protection fault in flex_array_get run #2: crashed: general protection fault in flex_array_get run #3: crashed: general protection fault in flex_array_get run #4: crashed: general protection fault in flex_array_get run #5: crashed: general protection fault in corrupted run #6: crashed: general protection fault in flex_array_get run #7: crashed: general protection fault in flex_array_get run #8: crashed: general protection fault in flex_array_get run #9: crashed: general protection fault in flex_array_get revisions tested: 2, total time: 26m29.849870721s (build: 18m23.291424004s, test: 6m45.516906431s) the crash still happens on HEAD commit msg: Linux 4.19.150 crash: general protection fault in flex_array_get should_failslab+0x9/0x14 mm/slab_common.c:1588 slab_pre_alloc_hook mm/slab.h:424 [inline] slab_alloc mm/slab.c:3383 [inline] __do_kmalloc mm/slab.c:3725 [inline] __kmalloc_track_caller+0x6c/0x760 mm/slab.c:3742 kmemdup+0x1d/0x40 mm/util.c:118 kasan: GPF could be caused by NULL-ptr deref or user memory access kmemdup include/linux/string.h:446 [inline] sctp_process_param net/sctp/sm_make_chunk.c:2609 [inline] sctp_process_init+0x1164/0x2d50 net/sctp/sm_make_chunk.c:2364 general protection fault: 0000 [#1] PREEMPT SMP KASAN CPU: 1 PID: 7524 Comm: syz-executor.0 Not tainted 4.19.150-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 sctp_cmd_process_init net/sctp/sm_sideeffect.c:682 [inline] sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1391 [inline] sctp_side_effects net/sctp/sm_sideeffect.c:1199 [inline] sctp_do_sm+0x9f6/0x4e50 net/sctp/sm_sideeffect.c:1170 RIP: 0010:flex_array_get+0x23/0x240 lib/flex_array.c:320 Code: 90 90 90 90 90 90 90 48 b8 00 00 00 00 00 fc ff df 55 48 89 fa 48 89 e5 48 c1 ea 03 41 56 41 55 41 54 53 48 89 fb 48 83 ec 10 <0f> b6 04 02 84 c0 74 08 3c 03 0f 8e 8d 01 00 00 44 8b 33 45 85 f6 RSP: 0018:ffff888072b2f5a8 EFLAGS: 00010282 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 1ffff110142e2e76 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: ffff888072b2f5d8 R08: ffff888072b2f908 R09: ffffed1015d64732 R10: ffffed1015d64732 R11: ffff8880aeb23993 R12: ffff88808bc86dc0 R13: ffff888074e41504 R14: ffff8880a8ea0600 R15: 1ffff11011790ea1 FS: 00007f34488fc700(0000) GS:ffff8880aeb00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f7ad779a000 CR3: 000000009bef9000 CR4: 00000000001406e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 sctp_assoc_bh_rcv+0x27f/0x5c0 net/sctp/associola.c:1073 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 sctp_inq_push+0x1aa/0x240 net/sctp/inqueue.c:95 Call Trace: sctp_backlog_rcv+0x1ab/0x13b0 net/sctp/input.c:356 sctp_stream_out include/net/sctp/structs.h:1474 [inline] sctp_sched_dequeue_done+0x1d8/0x300 net/sctp/stream_sched.c:255 __sctp_outq_teardown+0x660/0xc30 net/sctp/outqueue.c:268 sctp_outq_free+0x9/0x10 net/sctp/outqueue.c:292 sctp_association_free+0x1d5/0x711 net/sctp/associola.c:361 sctp_cmd_delete_tcb net/sctp/sm_sideeffect.c:944 [inline] sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1332 [inline] sctp_side_effects net/sctp/sm_sideeffect.c:1199 [inline] sctp_do_sm+0x989/0x4e50 net/sctp/sm_sideeffect.c:1170 sk_backlog_rcv include/net/sock.h:950 [inline] __release_sock+0x10c/0x360 net/core/sock.c:2344 release_sock+0x4f/0x180 net/core/sock.c:2881 sctp_wait_for_connect+0x22c/0x4c0 net/sctp/socket.c:8634 sctp_sendmsg_to_asoc+0x169a/0x1e10 net/sctp/socket.c:1989 sctp_primitive_SHUTDOWN+0x7c/0xc0 net/sctp/primitive.c:104 sctp_close+0x354/0x750 net/sctp/socket.c:1560 sctp_sendmsg+0xd3f/0x1680 net/sctp/socket.c:2135 inet_release+0xb9/0x1b0 net/ipv4/af_inet.c:427 __sock_release+0xc7/0x2a0 net/socket.c:579 inet_sendmsg+0x10d/0x450 net/ipv4/af_inet.c:798 sock_close+0x10/0x20 net/socket.c:1140 __fput+0x24c/0x7f0 fs/file_table.c:278 ____fput+0x9/0x10 fs/file_table.c:309 sock_sendmsg_nosec net/socket.c:622 [inline] sock_sendmsg+0xb7/0xf0 net/socket.c:632 task_work_run+0x10e/0x190 kernel/task_work.c:113 ___sys_sendmsg+0x649/0x950 net/socket.c:2115 get_signal+0x13ba/0x1a30 kernel/signal.c:2399 do_signal+0x87/0x1960 arch/x86/kernel/signal.c:821 __sys_sendmsg+0xd9/0x180 net/socket.c:2153 exit_to_usermode_loop+0x114/0x200 arch/x86/entry/common.c:163 __do_sys_sendmsg net/socket.c:2162 [inline] __se_sys_sendmsg net/socket.c:2160 [inline] __x64_sys_sendmsg+0x73/0xb0 net/socket.c:2160 prepare_exit_to_usermode arch/x86/entry/common.c:198 [inline] syscall_return_slowpath arch/x86/entry/common.c:271 [inline] do_syscall_64+0x419/0x4e0 arch/x86/entry/common.c:296 do_syscall_64+0xd6/0x4e0 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x458e29 RIP: 0033:0x458e29 Code: 2d b8 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 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 0f 83 fb b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 Code: 2d b8 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 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 0f 83 fb b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 RSP: 002b:00007f34488fbc78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RSP: 002b:00007f98ca3ffc78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: 000000000001fff8 RBX: 00007f34488fbc90 RCX: 0000000000458e29 RAX: ffffffffffffffda RBX: 00007f98ca3ffc90 RCX: 0000000000458e29 RDX: 0000000000000000 RSI: 0000000020000000 RDI: 0000000000000003 RDX: 0000000000000000 RSI: 0000000020000000 RDI: 0000000000000003 RBP: 000000000073bf00 R08: 0000000000000000 R09: 0000000000000000 RBP: 000000000073bf00 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007f34488fc6d4 R10: 0000000000000000 R11: 0000000000000246 R12: 00007f98ca4006d4 R13: 00000000004c6075 R14: 00000000004da858 R15: 0000000000000005 R13: 00000000004c6075 R14: 00000000004da858 R15: 0000000000000004 Modules linked in: CPU: 0 PID: 7527 Comm: syz-executor.1 Not tainted 4.19.150-syzkaller #0 FAULT_INJECTION: forcing a failure. name failslab, interval 1, probability 0, space 0, times 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+0x123/0x177 lib/dump_stack.c:118 fail_dump lib/fault-inject.c:51 [inline] should_fail.cold.4+0x5/0x13 lib/fault-inject.c:149 __should_failslab+0xba/0xf0 mm/failslab.c:32 FAULT_INJECTION: forcing a failure. name fail_page_alloc, interval 1, probability 0, space 0, times 0 should_failslab+0x9/0x14 mm/slab_common.c:1588 slab_pre_alloc_hook mm/slab.h:424 [inline] slab_alloc mm/slab.c:3383 [inline] __do_kmalloc mm/slab.c:3725 [inline] __kmalloc+0x70/0x770 mm/slab.c:3736 kmalloc include/linux/slab.h:520 [inline] kzalloc include/linux/slab.h:709 [inline] sctp_tsnmap_init+0x161/0x220 net/sctp/tsnmap.c:54 sctp_process_init+0x1bb0/0x2d50 net/sctp/sm_make_chunk.c:2449 sctp_cmd_process_init net/sctp/sm_sideeffect.c:682 [inline] sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1391 [inline] sctp_side_effects net/sctp/sm_sideeffect.c:1199 [inline] sctp_do_sm+0x9f6/0x4e50 net/sctp/sm_sideeffect.c:1170 sctp_assoc_bh_rcv+0x27f/0x5c0 net/sctp/associola.c:1073 sctp_inq_push+0x1aa/0x240 net/sctp/inqueue.c:95 sctp_backlog_rcv+0x1ab/0x13b0 net/sctp/input.c:356 sk_backlog_rcv include/net/sock.h:950 [inline] __release_sock+0x10c/0x360 net/core/sock.c:2344 release_sock+0x4f/0x180 net/core/sock.c:2881 sctp_wait_for_connect+0x22c/0x4c0 net/sctp/socket.c:8634 sctp_sendmsg_to_asoc+0x169a/0x1e10 net/sctp/socket.c:1989 sctp_sendmsg+0xd3f/0x1680 net/sctp/socket.c:2135 inet_sendmsg+0x10d/0x450 net/ipv4/af_inet.c:798 sock_sendmsg_nosec net/socket.c:622 [inline] sock_sendmsg+0xb7/0xf0 net/socket.c:632 ___sys_sendmsg+0x649/0x950 net/socket.c:2115 __sys_sendmsg+0xd9/0x180 net/socket.c:2153 __do_sys_sendmsg net/socket.c:2162 [inline] __se_sys_sendmsg net/socket.c:2160 [inline] __x64_sys_sendmsg+0x73/0xb0 net/socket.c:2160 do_syscall_64+0xd6/0x4e0 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x458e29 Code: 2d b8 fb ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 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 0f 83 fb b7 fb ff c3 66 2e 0f 1f 84 00 00 00 00 RSP: 002b:00007f9eea292c78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 00007f9eea292c90 RCX: 0000000000458e29 RDX: 0000000000000000 RSI: 0000000020000000 RDI: 0000000000000003 RBP: 000000000073bf00 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007f9eea2936d4 R13: 00000000004c6075 R14: 00000000004da858 R15: 0000000000000005 CPU: 1 PID: 7539 Comm: syz-executor.3 Tainted: G D 4.19.150-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+0x123/0x177 lib/dump_stack.c:118 fail_dump lib/fault-inject.c:51 [inline] should_fail.cold.4+0x5/0x13 lib/fault-inject.c:149 should_fail_alloc_page mm/page_alloc.c:3087 [inline] prepare_alloc_pages mm/page_alloc.c:4345 [inline] __alloc_pages_nodemask+0x1d5/0x710 mm/page_alloc.c:4392 __alloc_pages include/linux/gfp.h:496 [inline] __alloc_pages_node include/linux/gfp.h:509 [inline] kmem_getpages mm/slab.c:1412 [inline] cache_grow_begin+0x91/0x8d0 mm/slab.c:2682 cache_alloc_refill mm/slab.c:3049 [inline] ____cache_alloc mm/slab.c:3132 [inline] __do_cache_alloc mm/slab.c:3354 [inline] slab_alloc mm/slab.c:3389 [inline] kmem_cache_alloc_trace+0x67e/0x750 mm/slab.c:3623 ---[ end trace f995ed41fce742ae ]--- kmalloc include/linux/slab.h:515 [inline] kzalloc include/linux/slab.h:709 [inline] flex_array_alloc+0x19e/0x270 lib/flex_array.c:105 fa_alloc+0x14/0x50 net/sctp/stream.c:46 sctp_stream_alloc_in+0x23/0x230 net/sctp/stream.c:196 sctp_stream_init+0x1ba/0x330 net/sctp/stream.c:245 sctp_process_init+0x1c24/0x2d50 net/sctp/sm_make_chunk.c:2461 RIP: 0010:flex_array_get+0x23/0x240 lib/flex_array.c:320 sctp_cmd_process_init net/sctp/sm_sideeffect.c:682 [inline] sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1391 [inline] sctp_side_effects net/sctp/sm_sideeffect.c:1199 [inline] sctp_do_sm+0x9f6/0x4e50 net/sctp/sm_sideeffect.c:1170 Code: 90 90 90 90 90 90 90 48 b8 00 00 00 00 00 fc ff df 55 48 89 fa 48 89 e5 48 c1 ea 03 41 56 41 55 41 54 53 48 89 fb 48 83 ec 10 <0f> b6 04 02 84 c0 74 08 3c 03 0f 8e 8d 01 00 00 44 8b 33 45 85 f6 RSP: 0018:ffff888072b2f5a8 EFLAGS: 00010282 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 1ffff110142e2e76 sctp_assoc_bh_rcv+0x27f/0x5c0 net/sctp/associola.c:1073 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 sctp_inq_push+0x1aa/0x240 net/sctp/inqueue.c:95 RBP: ffff888072b2f5d8 R08: ffff888072b2f908 R09: ffffed1015d64732 sctp_backlog_rcv+0x1ab/0x13b0 net/sctp/input.c:356 R10: ffffed1015d64732 R11: ffff8880aeb23993 R12: ffff88808bc86dc0 sk_backlog_rcv include/net/sock.h:950 [inline] __release_sock+0x10c/0x360 net/core/sock.c:2344 release_sock+0x4f/0x180 net/core/sock.c:2881 sctp_wait_for_connect+0x22c/0x4c0 net/sctp/socket.c:8634 sctp_sendmsg_to_asoc+0x169a/0x1e10 net/sctp/socket.c:1989 R13: ffff888074e41504 R14: ffff8880a8ea0600 R15: 1ffff11011790ea1 FS: 00007f34488fc700(0000) GS:ffff8880aea00000(0000) knlGS:0000000000000000 sctp_sendmsg+0xd3f/0x1680 net/sctp/socket.c:2135 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fc933f88010 CR3: 000000009bef9000 CR4: 00000000001406f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 inet_sendmsg+0x10d/0x450 net/ipv4/af_inet.c:798 sock_sendmsg_nosec net/socket.c:622 [inline] sock_sendmsg+0xb7/0xf0 net/socket.c:632 ___sys_sendmsg+0x649/0x950 net/socket.c:2115