bisecting fixing commit since aec3002d07fd2564cd32e56f126fa6db14a168bb building syzkaller on 7509bf360eba1461ac6059e4cacfbc29c9d2d4c7 testing commit aec3002d07fd2564cd32e56f126fa6db14a168bb compiler: gcc version 8.4.1 20210217 (GCC) kernel signature: 6eb8eeaedb68e9397b47190d3dd8befb619e9b9853f2fe717e8c30ae9c1c2ff6 all runs: crashed: general protection fault in gcmaes_crypt_by_sg testing current HEAD 59456c9cc40c8f75b5a7efa0fe1f211d9c6fcaf1 testing commit 59456c9cc40c8f75b5a7efa0fe1f211d9c6fcaf1 compiler: gcc version 8.4.1 20210217 (GCC) kernel signature: e95eea07eccf8eebd3c0d34abb2e352bb9741113757a2f0eaed572b36e73136e all runs: crashed: general protection fault in gcmaes_crypt_by_sg revisions tested: 2, total time: 27m33.425051583s (build: 20m42.390097628s, test: 6m16.39221833s) the crash still happens on HEAD commit msg: Linux 4.19.204 crash: general protection fault in gcmaes_crypt_by_sg R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000005 R13: 00000000004f8130 R14: 00000000004b4b1b R15: 00007fe0ac0796bc kasan: CONFIG_KASAN_INLINE enabled IPv6: ADDRCONF(NETDEV_CHANGE): hsr0: link becomes ready kasan: GPF could be caused by NULL-ptr deref or user memory access general protection fault: 0000 [#1] PREEMPT SMP KASAN CPU: 0 PID: 6510 Comm: syz-executor.3 Not tainted 4.19.204-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:scatterwalk_start include/crypto/scatterwalk.h:73 [inline] RIP: 0010:scatterwalk_pagedone include/crypto/scatterwalk.h:98 [inline] RIP: 0010:scatterwalk_done include/crypto/scatterwalk.h:106 [inline] RIP: 0010:gcmaes_crypt_by_sg.constprop.16+0xf72/0x1490 arch/x86/crypto/aesni-intel_glue.c:868 Code: 2b 05 00 00 41 8b 45 08 89 84 24 90 00 00 00 e9 f2 f7 ff ff 4c 89 e7 e8 0c 14 be 01 48 8d 78 08 49 89 c4 48 89 f8 48 c1 e8 03 <42> 0f b6 04 30 84 c0 74 08 3c 03 0f 8e ea 04 00 00 41 8b 44 24 08 RSP: 0018:ffff8881d16372f0 EFLAGS: 00010202 RAX: 0000000000000001 RBX: 0000000000000034 RCX: 0000000000000000 RDX: 1ffff11039e755fc RSI: ffff8881cf3aafec RDI: 0000000000000008 RBP: ffff8881d1637620 R08: 0000000000000007 R09: 000000000000000d R10: ffff8881e7c3d020 R11: 0000000000000010 R12: 0000000000000000 R13: ffff8881cf3aadd8 R14: dffffc0000000000 R15: 0000000000000007 FS: 00007fe0ac079700(0000) GS:ffff8881f6800000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fc2fa582000 CR3: 00000001e74cd001 CR4: 00000000001606f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: gcmaes_encrypt.constprop.15+0x59f/0xda0 arch/x86/crypto/aesni-intel_glue.c:932 IPv6: ADDRCONF(NETDEV_UP): hsr0: link is not ready IPv6: ADDRCONF(NETDEV_CHANGE): hsr0: link becomes ready generic_gcmaes_encrypt+0xfd/0x150 arch/x86/crypto/aesni-intel_glue.c:1297 crypto_aead_encrypt include/crypto/aead.h:337 [inline] gcmaes_wrapper_encrypt+0x109/0x180 arch/x86/crypto/aesni-intel_glue.c:1130 crypto_aead_encrypt include/crypto/aead.h:337 [inline] tls_do_encryption net/tls/tls_sw.c:193 [inline] tls_push_record+0x9ae/0x1600 net/tls/tls_sw.c:228 tls_sw_sendpage+0x462/0xc00 net/tls/tls_sw.c:585 inet_sendpage+0x122/0x600 net/ipv4/af_inet.c:815 kernel_sendpage+0x60/0xd0 net/socket.c:3581 sock_sendpage+0x6d/0xd0 net/socket.c:912 pipe_to_sendpage+0x212/0x430 fs/splice.c:452 splice_from_pipe_feed fs/splice.c:503 [inline] __splice_from_pipe+0x2cb/0x720 fs/splice.c:627 splice_from_pipe+0xbb/0x120 fs/splice.c:662 generic_splice_sendpage+0x10/0x20 fs/splice.c:833 do_splice_from fs/splice.c:852 [inline] do_splice+0xa25/0x12b0 fs/splice.c:1154 __do_sys_splice fs/splice.c:1428 [inline] __se_sys_splice fs/splice.c:1408 [inline] __x64_sys_splice+0x248/0x300 fs/splice.c:1408 do_syscall_64+0xd0/0x4e0 arch/x86/entry/common.c:293 IPv6: ADDRCONF(NETDEV_UP): vxcan1: link is not ready entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x460c99 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 bc ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007fe0ac0791a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000113 RAX: ffffffffffffffda RBX: 000000000052bf00 RCX: 0000000000460c99 RDX: 0000000000000004 RSI: 0000000000000000 RDI: 0000000000000003 RBP: 0000000000000001 R08: 0000000100000300 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000005 R13: 00000000004f8130 R14: 00000000004b4b1b R15: 00007fe0ac0796bc Modules linked in: ---[ end trace 0a15d3541a903def ]--- RIP: 0010:scatterwalk_start include/crypto/scatterwalk.h:73 [inline] RIP: 0010:scatterwalk_pagedone include/crypto/scatterwalk.h:98 [inline] RIP: 0010:scatterwalk_done include/crypto/scatterwalk.h:106 [inline] RIP: 0010:gcmaes_crypt_by_sg.constprop.16+0xf72/0x1490 arch/x86/crypto/aesni-intel_glue.c:868 Code: 2b 05 00 00 41 8b 45 08 89 84 24 90 00 00 00 e9 f2 f7 ff ff 4c 89 e7 e8 0c 14 be 01 48 8d 78 08 49 89 c4 48 89 f8 48 c1 e8 03 <42> 0f b6 04 30 84 c0 74 08 3c 03 0f 8e ea 04 00 00 41 8b 44 24 08 RSP: 0018:ffff8881d16372f0 EFLAGS: 00010202 RAX: 0000000000000001 RBX: 0000000000000034 RCX: 0000000000000000 RDX: 1ffff11039e755fc RSI: ffff8881cf3aafec RDI: 0000000000000008 RBP: ffff8881d1637620 R08: 0000000000000007 R09: 000000000000000d R10: ffff8881e7c3d020 R11: 0000000000000010 R12: 0000000000000000 R13: ffff8881cf3aadd8 R14: dffffc0000000000 R15: 0000000000000007 FS: 00007fe0ac079700(0000) GS:ffff8881f6800000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fc2fa582000 CR3: 00000001e74cd001 CR4: 00000000001606f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess): 0: 2b 05 00 00 41 8b sub -0x74bf0000(%rip),%eax # 0x8b410006 6: 45 08 89 84 24 90 00 or %r9b,0x902484(%r9) d: 00 00 add %al,(%rax) f: e9 f2 f7 ff ff jmpq 0xfffff806 14: 4c 89 e7 mov %r12,%rdi 17: e8 0c 14 be 01 callq 0x1be1428 1c: 48 8d 78 08 lea 0x8(%rax),%rdi 20: 49 89 c4 mov %rax,%r12 23: 48 89 f8 mov %rdi,%rax 26: 48 c1 e8 03 shr $0x3,%rax * 2a: 42 0f b6 04 30 movzbl (%rax,%r14,1),%eax <-- trapping instruction 2f: 84 c0 test %al,%al 31: 74 08 je 0x3b 33: 3c 03 cmp $0x3,%al 35: 0f 8e ea 04 00 00 jle 0x525 3b: 41 8b 44 24 08 mov 0x8(%r12),%eax