bisecting fixing commit since c3038e718a19fc596f7b1baba0f83d5146dc7784 building syzkaller on d0686497a9ccb558957ad69ffc9577dd80031b29 testing commit c3038e718a19fc596f7b1baba0f83d5146dc7784 compiler: gcc version 8.4.1 20210217 (GCC) kernel signature: 07f178e96e84386aba102858d2de15df39588b4289d82999223780e34595cc86 run #0: crashed: general protection fault in find_match run #1: crashed: general protection fault in find_match run #2: crashed: general protection fault in find_match run #3: crashed: general protection fault in find_match run #4: crashed: general protection fault in find_match run #5: crashed: general protection fault in find_match run #6: crashed: general protection fault in find_match run #7: crashed: general protection fault in find_match run #8: crashed: general protection fault in find_match run #9: crashed: general protection fault in find_match run #10: crashed: general protection fault in find_match run #11: crashed: general protection fault in find_match run #12: crashed: general protection fault in find_match run #13: crashed: general protection fault in find_match run #14: crashed: general protection fault in find_match run #15: crashed: general protection fault in find_match run #16: crashed: general protection fault in find_match run #17: crashed: general protection fault in find_match run #18: OK run #19: OK testing current HEAD b172b44fcb1771e083aad806fa96f3f60e2ddfac testing commit b172b44fcb1771e083aad806fa96f3f60e2ddfac compiler: gcc version 8.4.1 20210217 (GCC) kernel signature: 8ed764b505d740410712ae0fa7c0db0efe80aeffb79582791d12ae6672751e0f run #0: crashed: general protection fault in find_match run #1: crashed: general protection fault in find_match run #2: crashed: general protection fault in find_match run #3: crashed: general protection fault in find_match run #4: crashed: general protection fault in find_match run #5: crashed: general protection fault in find_match run #6: crashed: general protection fault in find_match run #7: crashed: general protection fault in find_match run #8: OK run #9: OK revisions tested: 2, total time: 46m14.077377806s (build: 22m21.239495355s, test: 23m3.757178426s) the crash still happens on HEAD commit msg: Linux 4.19.206 crash: general protection fault in find_match kasan: CONFIG_KASAN_INLINE enabled kasan: GPF could be caused by NULL-ptr deref or user memory access general protection fault: 0000 [#1] PREEMPT SMP KASAN CPU: 0 PID: 6727 Comm: syz-executor.4 Not tainted 4.19.206-syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 01/01/2011 RIP: 0010:fib6_ignore_linkdown net/ipv6/route.c:657 [inline] RIP: 0010:find_match+0x119/0xd90 net/ipv6/route.c:673 Code: 4d c0 84 c0 4c 8b 45 b8 44 8b 5d b0 0f 84 1b 05 00 00 49 8d b8 3c 02 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 08 84 d2 0f 85 e8 RSP: 0018:ffff8881d2c7ef90 EFLAGS: 00010207 RAX: dffffc0000000000 RBX: ffff8881d977de00 RCX: ffff8881d977dec0 RDX: 0000000000000047 RSI: ffffffff88198060 RDI: 000000000000023c RBP: ffff8881d2c7f008 R08: 0000000000000000 R09: ffffed103ed0473a R10: ffffed103ed0473a R11: 0000000000000000 R12: ffff8881d2c7f100 R13: 0000000000000003 R14: ffff8881d2c7f0c0 R15: ffff8881d977deb0 FS: 00007fbbc0aff700(0000) GS:ffff8881f6800000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00000000004d2ac3 CR3: 00000001dadaf002 CR4: 00000000001606f0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 Call Trace: find_rr_leaf net/ipv6/route.c:719 [inline] rt6_select net/ipv6/route.c:769 [inline] fib6_table_lookup+0x39b/0xae0 net/ipv6/route.c:1876 ip6_pol_route+0x14b/0x8f0 net/ipv6/route.c:1909 ip6_pol_route_output+0x3c/0x70 net/ipv6/route.c:2135 fib6_rule_lookup+0x104/0x480 net/ipv6/fib6_rules.c:118 ip6_route_output_flags+0x22a/0x2c0 net/ipv6/route.c:2163 ip6_dst_lookup_tail+0x450/0x1620 net/ipv6/ip6_output.c:1019 ip6_dst_lookup_flow+0x83/0x170 net/ipv6/ip6_output.c:1120 ip6_sk_dst_lookup_flow net/ipv6/ip6_output.c:1158 [inline] ip6_sk_dst_lookup_flow+0x4e9/0xb50 net/ipv6/ip6_output.c:1148 udpv6_sendmsg+0x1472/0x2bf0 net/ipv6/udp.c:1386 inet_sendmsg+0x108/0x440 net/ipv4/af_inet.c:798 sock_sendmsg_nosec net/socket.c:651 [inline] sock_sendmsg+0xb5/0xf0 net/socket.c:661 ___sys_sendmsg+0x28e/0x950 net/socket.c:2227 __sys_sendmmsg+0x160/0x370 net/socket.c:2322 __do_sys_sendmmsg net/socket.c:2351 [inline] __se_sys_sendmmsg net/socket.c:2348 [inline] __x64_sys_sendmmsg+0x98/0x100 net/socket.c:2348 do_syscall_64+0xd0/0x4e0 arch/x86/entry/common.c:293 entry_SYSCALL_64_after_hwframe+0x49/0xbe RIP: 0033:0x461949 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:00007fbbc0aff1a8 EFLAGS: 00000246 ORIG_RAX: 0000000000000133 RAX: ffffffffffffffda RBX: 000000000052bf00 RCX: 0000000000461949 RDX: 00000000000000c6 RSI: 0000000020006d00 RDI: 0000000000000004 RBP: 0000000000000004 R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 00000000ffffffff R13: 00000000004f6188 R14: 00000000004b302e R15: 00007fbbc0aff6bc Modules linked in: ---[ end trace 315f3f30b950d036 ]--- RIP: 0010:fib6_ignore_linkdown net/ipv6/route.c:657 [inline] RIP: 0010:find_match+0x119/0xd90 net/ipv6/route.c:673 Code: 4d c0 84 c0 4c 8b 45 b8 44 8b 5d b0 0f 84 1b 05 00 00 49 8d b8 3c 02 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 14 02 48 89 f8 83 e0 07 83 c0 03 38 d0 7c 08 84 d2 0f 85 e8 RSP: 0018:ffff8881d2c7ef90 EFLAGS: 00010207 RAX: dffffc0000000000 RBX: ffff8881d977de00 RCX: ffff8881d977dec0 RDX: 0000000000000047 RSI: ffffffff88198060 RDI: 000000000000023c RBP: ffff8881d2c7f008 R08: 0000000000000000 R09: ffffed103ed0473a R10: ffffed103ed0473a R11: 0000000000000000 R12: ffff8881d2c7f100 R13: 0000000000000003 R14: ffff8881d2c7f0c0 R15: ffff8881d977deb0 FS: 00007fbbc0aff700(0000) GS:ffff8881f6900000(0000) knlGS:0000000000000000 CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 CR2: 00007fc0b9acd000 CR3: 00000001dadaf002 CR4: 00000000001606e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 ---------------- Code disassembly (best guess): 0: 4d c0 84 c0 4c 8b 45 rex.WRB rolb $0x44,-0x47ba74b4(%r8,%rax,8) 7: b8 44 9: 8b 5d b0 mov -0x50(%rbp),%ebx c: 0f 84 1b 05 00 00 je 0x52d 12: 49 8d b8 3c 02 00 00 lea 0x23c(%r8),%rdi 19: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax 20: fc ff df 23: 48 89 fa mov %rdi,%rdx 26: 48 c1 ea 03 shr $0x3,%rdx * 2a: 0f b6 14 02 movzbl (%rdx,%rax,1),%edx <-- trapping instruction 2e: 48 89 f8 mov %rdi,%rax 31: 83 e0 07 and $0x7,%eax 34: 83 c0 03 add $0x3,%eax 37: 38 d0 cmp %dl,%al 39: 7c 08 jl 0x43 3b: 84 d2 test %dl,%dl 3d: 0f .byte 0xf 3e: 85 e8 test %ebp,%eax