bisecting fixing commit since a03957ab0fd5d7d03b512a72ab9106a1749f556e building syzkaller on 1bfa09b9672821334a7ed926244ebc39910b84f4 testing commit a03957ab0fd5d7d03b512a72ab9106a1749f556e with gcc (GCC) 8.1.0 kernel signature: 96b8a0b0101666f474d0ed091b0ddcf8a398e125046e949ad609fdf2f683be88 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 corrupted 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 testing current HEAD a87f96283793d58b042618c689630db264715274 testing commit a87f96283793d58b042618c689630db264715274 with gcc (GCC) 8.1.0 kernel signature: 74243185e0ce7f6c25057912d1ecd12c93499eff1b9af4b39fb9ddfd0d5b04e5 all runs: crashed: general protection fault in flex_array_get revisions tested: 2, total time: 22m49.797755152s (build: 15m22.096265516s, test: 6m45.800091651s) the crash still happens on HEAD commit msg: Linux 4.19.145 crash: general protection fault in flex_array_get sctp_inq_push+0x1aa/0x240 net/sctp/inqueue.c:95 kasan: GPF could be caused by NULL-ptr deref or user memory access sctp_backlog_rcv+0x1ac/0x1280 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 general protection fault: 0000 [#1] PREEMPT SMP KASAN sctp_wait_for_connect+0x22c/0x4c0 net/sctp/socket.c:8634 CPU: 0 PID: 7474 Comm: syz-executor.1 Not tainted 4.19.145-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 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:ffff88808d2675a8 EFLAGS: 00010282 sctp_sendmsg_to_asoc+0x169a/0x1e10 net/sctp/socket.c:1989 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 1ffff11011d1d716 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 RBP: ffff88808d2675d8 R08: ffff88808d267908 R09: ffffed1015d44732 R10: ffffed1015d44732 R11: ffff8880aea23993 R12: ffff88808c728d00 R13: ffff888074542744 R14: ffff888097310280 R15: 1ffff110118e5289 FS: 00007fc69e136700(0000) GS:ffff8880aea00000(0000) knlGS:0000000000000000 sctp_sendmsg+0xd3f/0x1680 net/sctp/socket.c:2135 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f105a454000 CR3: 0000000097004000 CR4: 00000000001406f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: inet_sendmsg+0x10d/0x450 net/ipv4/af_inet.c:798 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:267 sock_sendmsg_nosec net/socket.c:622 [inline] sock_sendmsg+0xb7/0xf0 net/socket.c:632 sctp_outq_free+0x9/0x10 net/sctp/outqueue.c:291 ___sys_sendmsg+0x649/0x950 net/socket.c:2115 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 __sys_sendmsg+0xd9/0x180 net/socket.c:2153 sctp_primitive_SHUTDOWN+0x7c/0xc0 net/sctp/primitive.c:104 sctp_close+0x354/0x750 net/sctp/socket.c:1560 __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 inet_release+0xb9/0x1b0 net/ipv4/af_inet.c:427 entry_SYSCALL_64_after_hwframe+0x49/0xbe __sock_release+0xc7/0x2a0 net/socket.c:579 RIP: 0033:0x458e29 sock_close+0x10/0x20 net/socket.c:1140 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 __fput+0x24c/0x7f0 fs/file_table.c:278 RSP: 002b:00007f80b10e2c78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e ____fput+0x9/0x10 fs/file_table.c:309 RAX: ffffffffffffffda RBX: 00007f80b10e2c90 RCX: 0000000000458e29 task_work_run+0x10e/0x190 kernel/task_work.c:113 RDX: 0000000000000000 RSI: 0000000020000000 RDI: 0000000000000003 get_signal+0x13ba/0x1a30 kernel/signal.c:2399 RBP: 000000000073bf00 R08: 0000000000000000 R09: 0000000000000000 do_signal+0x87/0x1960 arch/x86/kernel/signal.c:821 R10: 0000000000000000 R11: 0000000000000246 R12: 00007f80b10e36d4 R13: 00000000004c6075 R14: 00000000004da858 R15: 0000000000000005 CPU: 1 PID: 7473 Comm: syz-executor.4 Not tainted 4.19.145-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_failslab+0xba/0xf0 mm/failslab.c:32 should_failslab+0x9/0x14 mm/slab_common.c:1588 slab_pre_alloc_hook mm/slab.h:424 [inline] slab_alloc_node mm/slab.c:3304 [inline] kmem_cache_alloc_node_trace+0x5a/0x740 mm/slab.c:3666 __do_kmalloc_node mm/slab.c:3688 [inline] __kmalloc_node_track_caller+0x3c/0x70 mm/slab.c:3703 exit_to_usermode_loop+0x114/0x200 arch/x86/entry/common.c:163 __kmalloc_reserve.isra.39+0x2c/0xc0 net/core/skbuff.c:137 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 __alloc_skb+0xd7/0x580 net/core/skbuff.c:205 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:00007fc69e135c78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e alloc_skb include/linux/skbuff.h:995 [inline] _sctp_make_chunk+0x3f/0x260 net/sctp/sm_make_chunk.c:1411 RAX: 000000000001fff8 RBX: 00007fc69e135c90 RCX: 0000000000458e29 sctp_make_control net/sctp/sm_make_chunk.c:1458 [inline] sctp_make_cookie_echo+0x85/0x160 net/sctp/sm_make_chunk.c:591 RDX: 0000000000000000 RSI: 0000000020000000 RDI: 0000000000000003 sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1397 [inline] sctp_side_effects net/sctp/sm_sideeffect.c:1199 [inline] sctp_do_sm+0x2929/0x4e50 net/sctp/sm_sideeffect.c:1170 RBP: 000000000073bf00 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007fc69e1366d4 R13: 00000000004c6075 R14: 00000000004da858 R15: 0000000000000005 Modules linked in: FAULT_INJECTION: forcing a failure. name failslab, interval 1, probability 0, space 0, times 0 sctp_assoc_bh_rcv+0x27f/0x5c0 net/sctp/associola.c:1073 sctp_inq_push+0x1aa/0x240 net/sctp/inqueue.c:95 sctp_backlog_rcv+0x1ac/0x1280 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 ---[ end trace 7d6159df6da706d0 ]--- __sys_sendmsg+0xd9/0x180 net/socket.c:2153 RIP: 0010:flex_array_get+0x23/0x240 lib/flex_array.c:320 __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 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 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:00007f4772558c78 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 00007f4772558c90 RCX: 0000000000458e29 RDX: 0000000000000000 RSI: 0000000020000000 RDI: 0000000000000003 RBP: 000000000073bf00 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00007f47725596d4 R13: 00000000004c6075 R14: 00000000004da858 R15: 0000000000000005 CPU: 1 PID: 7486 Comm: syz-executor.3 Tainted: G D 4.19.145-syzkaller #0 RSP: 0018:ffff88808d2675a8 EFLAGS: 00010282 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 RAX: dffffc0000000000 RBX: 0000000000000000 RCX: 1ffff11011d1d716 __should_failslab+0xba/0xf0 mm/failslab.c:32 should_failslab+0x9/0x14 mm/slab_common.c:1588 slab_pre_alloc_hook mm/slab.h:424 [inline] slab_alloc_node mm/slab.c:3304 [inline] kmem_cache_alloc_node+0x56/0x730 mm/slab.c:3647 __alloc_skb+0xa7/0x580 net/core/skbuff.c:193 RDX: 0000000000000000 RSI: 0000000000000000 RDI: 0000000000000000 alloc_skb include/linux/skbuff.h:995 [inline] sctp_packet_transmit+0x26b/0x3490 net/sctp/output.c:584 RBP: ffff88808d2675d8 R08: ffff88808d267908 R09: ffffed1015d44732 R10: ffffed1015d44732 R11: ffff8880aea23993 R12: ffff88808c728d00 sctp_outq_flush_transports net/sctp/outqueue.c:1165 [inline] sctp_outq_flush+0x252/0x22f0 net/sctp/outqueue.c:1213 R13: ffff888074542744 R14: ffff888097310280 R15: 1ffff110118e5289 sctp_outq_uncork+0x49/0x60 net/sctp/outqueue.c:776 sctp_cmd_interpreter net/sctp/sm_sideeffect.c:1815 [inline] sctp_side_effects net/sctp/sm_sideeffect.c:1199 [inline] sctp_do_sm+0x1056/0x4e50 net/sctp/sm_sideeffect.c:1170 FS: 00007fc69e136700(0000) GS:ffff8880aea00000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007f105a469010 CR3: 0000000097004000 CR4: 00000000001406f0 sctp_assoc_bh_rcv+0x27f/0x5c0 net/sctp/associola.c:1073 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 sctp_inq_push+0x1aa/0x240 net/sctp/inqueue.c:95 sctp_backlog_rcv+0x1ac/0x1280 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 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 sctp_sendmsg_to_asoc+0x169a/0x1e10 net/sctp/socket.c:1989