====================================== | [ 4681.258444][T15340] eth1: renamed from tmp | [ 4706.760354][T15458] eth1: renamed from tmp | [ 4718.118325][T15497] Oops: general protection fault, probably for non-canonical address 0xdffffc0000000021: 0000 [#1] PREEMPT SMP KASAN NOPTI | [ 4718.118805][T15497] KASAN: null-ptr-deref in range [0x0000000000000108-0x000000000000010f] [ 4718.119327][T15497] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [4718.119694][T15497] RIP: 0010:ip6_rt_pcpu_alloc (./include/net/net_namespace.h:387 ./include/linux/netdevice.h:2621 net/ipv6/route.c:1381) [ 4718.119878][T15497] Code: 08 e8 7a b4 fe ff 44 0f b7 f3 49 89 c7 e8 7e f6 43 00 49 8d 9f 08 01 00 00 48 b8 00 00 00 00 00 fc ff df 48 89 d9 48 c1 e9 03 <80> 3c 01 00 0f 85 24 03 00 00 49 8b bf 08 01 00 00 44 89 f2 4c 89 All code ======== 0: 08 e8 or %ch,%al 2: 7a b4 jp 0xffffffffffffffb8 4: fe (bad) 5: ff 44 0f b7 incl -0x49(%rdi,%rcx,1) 9: f3 49 89 c7 repz mov %rax,%r15 d: e8 7e f6 43 00 call 0x43f690 12: 49 8d 9f 08 01 00 00 lea 0x108(%r15),%rbx 19: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax 20: fc ff df 23: 48 89 d9 mov %rbx,%rcx 26: 48 c1 e9 03 shr $0x3,%rcx 2a:* 80 3c 01 00 cmpb $0x0,(%rcx,%rax,1) <-- trapping instruction 2e: 0f 85 24 03 00 00 jne 0x358 34: 49 8b bf 08 01 00 00 mov 0x108(%r15),%rdi 3b: 44 89 f2 mov %r14d,%edx 3e: 4c rex.WR 3f: 89 .byte 0x89 Code starting with the faulting instruction =========================================== 0: 80 3c 01 00 cmpb $0x0,(%rcx,%rax,1) 4: 0f 85 24 03 00 00 jne 0x32e a: 49 8b bf 08 01 00 00 mov 0x108(%r15),%rdi 11: 44 89 f2 mov %r14d,%edx 14: 4c rex.WR 15: 89 .byte 0x89 [ 4718.120454][T15497] RSP: 0018:ffffc9000705e9b8 EFLAGS: 00010206 [ 4718.120662][T15497] RAX: dffffc0000000000 RBX: 0000000000000108 RCX: 0000000000000021 [ 4718.120908][T15497] RDX: 1ffff11000b7e235 RSI: ffff8880040a5110 RDI: ffff888005bf1000 [ 4718.121147][T15497] RBP: ffff8880083eb82c R08: 0000000000000000 R09: ffff8880040a5110 [ 4718.121390][T15497] R10: 1ffff92000e0bcf0 R11: ffff888005d71b80 R12: ffff8880083eb800 [ 4718.121628][T15497] R13: ffffc9000705eab8 R14: 0000000000000008 R15: 0000000000000000 [ 4718.121878][T15497] FS: 00007faf44867740(0000) GS:ffff88802f000000(0000) knlGS:0000000000000000 [ 4718.122166][T15497] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 4718.122374][T15497] CR2: 00000000004e2d20 CR3: 0000000008a9a003 CR4: 0000000000772ef0 [ 4718.122614][T15497] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 4718.122860][T15497] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 4718.123099][T15497] PKRU: 55555554 [ 4718.123224][T15497] Call Trace: [ 4718.123348][T15497] [4718.123432][T15497] ? die_addr (arch/x86/kernel/dumpstack.c:421 arch/x86/kernel/dumpstack.c:460) [4718.123569][T15497] ? exc_general_protection (arch/x86/kernel/traps.c:751 arch/x86/kernel/traps.c:693) [4718.123747][T15497] ? asm_exc_general_protection (./arch/x86/include/asm/idtentry.h:617) [4718.123916][T15497] ? ip6_rt_pcpu_alloc (./include/net/net_namespace.h:387 ./include/linux/netdevice.h:2621 net/ipv6/route.c:1381) [4718.124080][T15497] ? ip6_rt_pcpu_alloc (./include/net/net_namespace.h:387 ./include/linux/netdevice.h:2621 net/ipv6/route.c:1381) [4718.124239][T15497] ? __pfx_ip6_rt_pcpu_alloc (net/ipv6/route.c:1370) [4718.124397][T15497] ? __pfx_rt6_find_cached_rt.constprop.0.isra.0 (net/ipv6/route.c:1798) [4718.124638][T15497] ip6_pol_route (net/ipv6/route.c:1430 net/ipv6/route.c:2267) [4718.124805][T15497] ? __pfx_ip6_pol_route (net/ipv6/route.c:2216) [4718.124995][T15497] ? fib6_get_table (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:880 net/ipv6/ip6_fib.c:281) [4718.125161][T15497] __fib6_rule_action (./include/net/ip6_fib.h:616 net/ipv6/fib6_rules.c:234) [4718.125324][T15497] ? __pfx_ip6_pol_route_output (net/ipv6/route.c:2605) [4718.125485][T15497] ? l3mdev_fib_rule_match (net/l3mdev/l3mdev.c:269) [4718.125647][T15497] fib_rules_lookup (net/core/fib_rules.c:319 (discriminator 1)) [4718.125813][T15497] ? __pfx_fib_rules_lookup (net/core/fib_rules.c:295) [4718.125974][T15497] ? l3mdev_update_flow (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:880 net/l3mdev/l3mdev.c:299) [4718.126133][T15497] ? __pfx_ip6_pol_route_output (net/ipv6/route.c:2605) [4718.126298][T15497] ? __pfx_ip6_pol_route_output (net/ipv6/route.c:2605) [4718.126459][T15497] fib6_rule_lookup (net/ipv6/fib6_rules.c:112) [4718.126623][T15497] ? __pfx_fib6_rule_lookup (net/ipv6/fib6_rules.c:96) [4718.126781][T15497] ? ip6_route_output_flags (./include/linux/rcupdate.h:337 ./include/linux/rcupdate.h:849 net/ipv6/route.c:2650) [4718.126939][T15497] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5790) [4718.127101][T15497] ? __pfx_ip6_pol_route_output (net/ipv6/route.c:2605) [4718.127266][T15497] ? ip6_route_output_flags (./include/linux/rcupdate.h:337 ./include/linux/rcupdate.h:849 net/ipv6/route.c:2650) [4718.127430][T15497] ? lock_acquire (kernel/locking/lockdep.c:5798) [4718.127589][T15497] ? ip6_route_output_flags (./include/linux/rcupdate.h:337 ./include/linux/rcupdate.h:849 net/ipv6/route.c:2650) [4718.127751][T15497] ip6_route_output_flags (net/ipv6/route.c:2639 net/ipv6/route.c:2651) [4718.127913][T15497] ip6_dst_lookup_tail.constprop.0 (net/ipv6/ip6_output.c:1156) [4718.128113][T15497] ip6_dst_lookup_flow (net/ipv6/ip6_output.c:1260) [4718.128272][T15497] ? __pfx_ip6_dst_lookup_flow (net/ipv6/ip6_output.c:1255) [4718.128430][T15497] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [4718.128594][T15497] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:228) [4718.128759][T15497] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [4718.128879][T15497] ? __lock_release (kernel/locking/lockdep.c:5501) [4718.129041][T15497] vrf_process_v6_outbound (drivers/net/vrf.c:452) [4718.129205][T15497] ? __lock_acquire (kernel/locking/lockdep.c:5202) [4718.129368][T15497] ? __pfx_vrf_process_v6_outbound (drivers/net/vrf.c:429) [4718.129569][T15497] ? __dev_queue_xmit (./include/linux/bottom_half.h:20 ./include/linux/rcupdate.h:901 net/core/dev.c:4355) [4718.129728][T15497] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [4718.129853][T15497] ? __pfx_qdisc_pkt_len_init (net/core/dev.c:3739) [4718.130019][T15497] vrf_xmit (drivers/net/vrf.c:587) [4718.130140][T15497] dev_hard_start_xmit (./include/linux/netdevice.h:4989 ./include/linux/netdevice.h:4998 net/core/dev.c:3590 net/core/dev.c:3606) [4718.130304][T15497] __dev_queue_xmit (net/core/dev.h:266 net/core/dev.c:4431) [4718.130469][T15497] ? __lock_release (kernel/locking/lockdep.c:5501) [4718.130629][T15497] ? ip6_finish_output2 (./include/net/neighbour.h:539 net/ipv6/ip6_output.c:141) [4718.130791][T15497] ? __pfx___lock_release (kernel/locking/lockdep.c:5477) [4718.130949][T15497] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:228) [4718.131112][T15497] ? __pfx___dev_queue_xmit (net/core/dev.c:4339) [4718.131278][T15497] ? mark_held_locks (kernel/locking/lockdep.c:4321) [4718.131440][T15497] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [4718.131640][T15497] ? neigh_hh_output (./include/linux/seqlock.h:74 ./include/linux/seqlock.h:757 ./include/net/neighbour.h:495) [4718.131802][T15497] ip6_finish_output2 (./include/net/neighbour.h:539 net/ipv6/ip6_output.c:141) [4718.131964][T15497] ip6_finish_output (net/ipv6/ip6_output.c:215 net/ipv6/ip6_output.c:226) [4718.132128][T15497] ip6_output (./include/linux/netfilter.h:303 net/ipv6/ip6_output.c:247) [4718.132256][T15497] ? __pfx_ip6_output (net/ipv6/ip6_output.c:234) [4718.132416][T15497] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 52)) [4718.132581][T15497] ? ip6_dst_mtu_maybe_forward.constprop.0 (./include/net/ip6_route.h:342) [4718.132787][T15497] ip6_xmit (./include/net/dst.h:450 ./include/linux/netfilter.h:314 ./include/linux/netfilter.h:308 net/ipv6/ip6_output.c:366) [4718.132909][T15497] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [4718.133029][T15497] ? ip6_dst_check.part.0 (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:880 net/ipv6/route.c:2769) [4718.133190][T15497] ? __pfx_ip6_xmit (net/ipv6/ip6_output.c:269) [4718.133352][T15497] ? lock_acquire.part.0 (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5827) [4718.133513][T15497] ? inet6_csk_xmit (./include/linux/rcupdate.h:337 ./include/linux/rcupdate.h:849 net/ipv6/inet6_connection_sock.c:129) [4718.133675][T15497] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5790) [4718.133848][T15497] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 52)) [4718.134011][T15497] ? __pfx_inet6_csk_route_socket (net/ipv6/inet6_connection_sock.c:81) [4718.134214][T15497] ? inet6_csk_xmit (./include/linux/rcupdate.h:337 ./include/linux/rcupdate.h:849 net/ipv6/inet6_connection_sock.c:129) [4718.134377][T15497] inet6_csk_xmit (net/ipv6/inet6_connection_sock.c:135 (discriminator 11)) [4718.134537][T15497] ? __pfx_inet6_csk_xmit (net/ipv6/inet6_connection_sock.c:115) [4718.134699][T15497] ? __copy_skb_header (./include/net/dst.h:290 net/core/skbuff.c:1534) [4718.134872][T15497] __tcp_transmit_skb (net/ipv4/tcp_output.c:1466 (discriminator 1)) [4718.135037][T15497] ? __pfx___tcp_transmit_skb (net/ipv4/tcp_output.c:1287) [4718.135201][T15497] ? tcp_write_xmit (net/ipv4/tcp_output.c:59 net/ipv4/tcp_output.c:2746) [4718.135360][T15497] ? __pfx___lock_release (kernel/locking/lockdep.c:5477) [4718.135522][T15497] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:228) [4718.135687][T15497] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [4718.135885][T15497] ? tcp_small_queue_check.isra.0 (./arch/x86/include/asm/atomic.h:23 ./include/linux/atomic/atomic-arch-fallback.h:457 ./include/linux/atomic/atomic-instrumented.h:33 ./include/linux/refcount.h:136 net/ipv4/tcp_output.c:2628) [4718.136082][T15497] tcp_write_xmit (net/ipv4/tcp_output.c:2827) [4718.136244][T15497] ? __build_skb_around (./arch/x86/include/asm/atomic.h:28 ./include/linux/atomic/atomic-arch-fallback.h:503 ./include/linux/atomic/atomic-instrumented.h:68 net/core/skbuff.c:390 net/core/skbuff.c:448) [4718.136404][T15497] ? __alloc_skb (./arch/x86/include/asm/atomic.h:28 ./include/linux/atomic/atomic-arch-fallback.h:503 ./include/linux/atomic/atomic-instrumented.h:68 ./include/linux/refcount.h:125 net/core/skbuff.c:702) [4718.136562][T15497] ? __pfx_tcp_write_xmit (net/ipv4/tcp_output.c:2736) [4718.136720][T15497] ? skb_do_copy_data_nocache (./include/linux/uio.h:219 ./include/linux/uio.h:236 ./include/net/sock.h:2187) [4718.136893][T15497] ? __pfx_skb_do_copy_data_nocache (./include/net/sock.h:2178) [4718.137093][T15497] ? skb_page_frag_refill (./arch/x86/include/asm/atomic.h:23 ./include/linux/atomic/atomic-arch-fallback.h:457 ./include/linux/atomic/atomic-instrumented.h:33 ./include/linux/page_ref.h:67 net/core/sock.c:3001) [4718.137252][T15497] __tcp_push_pending_frames (net/ipv4/tcp_output.c:3012) [4718.137408][T15497] tcp_sendmsg_locked (net/ipv4/tcp.c:1326) [4718.137573][T15497] ? __pfx_tcp_sendmsg_locked (net/ipv4/tcp.c:1053) [4718.137733][T15497] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:228) [4718.137891][T15497] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [4718.138011][T15497] ? mark_held_locks (kernel/locking/lockdep.c:4321) [4718.138169][T15497] tcp_sendmsg (net/ipv4/tcp.c:1359) [4718.138290][T15497] sock_write_iter (net/socket.c:729 net/socket.c:744 net/socket.c:1165) [4718.138449][T15497] ? __pfx_sock_write_iter (net/socket.c:1149) [4718.138621][T15497] vfs_write (fs/read_write.c:590 fs/read_write.c:683) [4718.138741][T15497] ? __pfx___lock_release (kernel/locking/lockdep.c:5477) [4718.138902][T15497] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 52)) [4718.139063][T15497] ? __might_fault (mm/memory.c:6700 mm/memory.c:6693) [4718.139225][T15497] ? lock_acquire (kernel/locking/lockdep.c:5798) [4718.139383][T15497] ? __pfx_vfs_write (fs/read_write.c:664) [4718.139541][T15497] ? __might_fault (mm/memory.c:6700 mm/memory.c:6693) [4718.139702][T15497] ? __rseq_handle_notify_resume (kernel/rseq.c:316) [4718.139905][T15497] ksys_write (fs/read_write.c:736) [4718.140026][T15497] ? __pfx_ksys_write (fs/read_write.c:726) [4718.140192][T15497] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [4718.140364][T15497] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 4718.140564][T15497] RIP: 0033:0x7faf449a8957 [ 4718.140740][T15497] Code: 0b 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b7 0f 1f 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 51 c3 48 83 ec 28 48 89 54 24 18 48 89 74 24 All code ======== 0: 0b 00 or (%rax),%eax 2: f7 d8 neg %eax 4: 64 89 02 mov %eax,%fs:(%rdx) 7: 48 c7 c0 ff ff ff ff mov $0xffffffffffffffff,%rax e: eb b7 jmp 0xffffffffffffffc7 10: 0f 1f 00 nopl (%rax) 13: f3 0f 1e fa endbr64 17: 64 8b 04 25 18 00 00 mov %fs:0x18,%eax 1e: 00 1f: 85 c0 test %eax,%eax 21: 75 10 jne 0x33 23: b8 01 00 00 00 mov $0x1,%eax 28: 0f 05 syscall 2a:* 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax <-- trapping instruction 30: 77 51 ja 0x83 32: c3 ret 33: 48 83 ec 28 sub $0x28,%rsp 37: 48 89 54 24 18 mov %rdx,0x18(%rsp) 3c: 48 rex.W 3d: 89 .byte 0x89 3e: 74 24 je 0x64 Code starting with the faulting instruction =========================================== 0: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax 6: 77 51 ja 0x59 8: c3 ret 9: 48 83 ec 28 sub $0x28,%rsp d: 48 89 54 24 18 mov %rdx,0x18(%rsp) 12: 48 rex.W 13: 89 .byte 0x89 14: 74 24 je 0x3a [ 4718.141304][T15497] RSP: 002b:00007ffefeed0028 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 [ 4718.141547][T15497] RAX: ffffffffffffffda RBX: 000000000000001c RCX: 00007faf449a8957 [ 4718.141787][T15497] RDX: 000000000000000c RSI: 00007ffefeed0100 RDI: 0000000000000006 [ 4718.142160][T15497] RBP: 00007ffefeed0070 R08: 000000000000000c R09: 0000000000000000 [ 4718.142549][T15497] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000006 Finger prints: ip6_rt_pcpu_alloc:ip6_pol_route:__fib6_rule_action:fib_rules_lookup:fib6_rule_lookup