====================================== | xx__-> [ 24.540887][ T281] ipip: IPv4 and MPLS over IPv4 tunneling driver | [ 30.586579][ C2] ------------[ cut here ]------------ | [ 30.587198][ C2] WARNING: CPU: 2 PID: 329 at ./include/linux/skbuff.h:1164 icmp_route_lookup.constprop.0 (./include/linux/skbuff.h:1164 ./include/linux/skbuff.h:1178 net/ipv4/icmp.c:548) | [ 30.587944][ C2] Modules linked in: inet_diag ipip veth [ 30.589233][ C2] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 30.589710][ C2] RIP: 0010:icmp_route_lookup.constprop.0 (./include/linux/skbuff.h:1164 ./include/linux/skbuff.h:1178 net/ipv4/icmp.c:548) [ 30.590248][ C2] Code: c1 ea 03 80 3c 02 00 0f 85 2c 05 00 00 48 8b 45 58 48 89 44 24 08 a8 01 0f 85 35 02 00 00 48 f7 44 24 08 fe ff ff ff 74 04 90 <0f> 0b 90 48 b8 00 00 00 00 00 fc ff df 4c 89 da 48 c1 ea 03 80 3c All code ======== 0: c1 ea 03 shr $0x3,%edx 3: 80 3c 02 00 cmpb $0x0,(%rdx,%rax,1) 7: 0f 85 2c 05 00 00 jne 0x539 d: 48 8b 45 58 mov 0x58(%rbp),%rax 11: 48 89 44 24 08 mov %rax,0x8(%rsp) 16: a8 01 test $0x1,%al 18: 0f 85 35 02 00 00 jne 0x253 1e: 48 f7 44 24 08 fe ff testq $0xfffffffffffffffe,0x8(%rsp) 25: ff ff 27: 74 04 je 0x2d 29: 90 nop 2a:* 0f 0b ud2 <-- trapping instruction 2c: 90 nop 2d: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax 34: fc ff df 37: 4c 89 da mov %r11,%rdx 3a: 48 c1 ea 03 shr $0x3,%rdx 3e: 80 .byte 0x80 3f: 3c .byte 0x3c Code starting with the faulting instruction =========================================== 0: 0f 0b ud2 2: 90 nop 3: 48 b8 00 00 00 00 00 movabs $0xdffffc0000000000,%rax a: fc ff df d: 4c 89 da mov %r11,%rdx 10: 48 c1 ea 03 shr $0x3,%rdx 14: 80 .byte 0x80 15: 3c .byte 0x3c [ 30.591560][ C2] RSP: 0018:ffffc90000218270 EFLAGS: 00010282 [ 30.592033][ C2] RAX: ffff88800def8340 RBX: 1ffff92000043052 RCX: 0000000000000002 [ 30.592602][ C2] RDX: 1ffff110014a304b RSI: ffffffffa8aa1d68 RDI: ffffc90000218322 [ 30.593165][ C2] RBP: ffff88800a518200 R08: 0000000000000001 R09: ffff88800def8640 [ 30.593750][ C2] R10: ffffffffa9a0c2d7 R11: ffff88800a518258 R12: ffff8880062e0040 [ 30.594312][ C2] R13: ffffc90000218520 R14: ffff88800def87c0 R15: ffffc900002182b0 [ 30.594884][ C2] FS: 00007fe71d662740(0000) GS:ffff88808b7a4000(0000) knlGS:0000000000000000 [ 30.595546][ C2] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 30.596017][ C2] CR2: 0000561715f4f000 CR3: 000000000b2a6006 CR4: 0000000000772ef0 [ 30.596591][ C2] PKRU: 55555554 [ 30.596889][ C2] Call Trace: [ 30.597176][ C2] [ 30.597388][ C2] ? mark_lock (kernel/locking/lockdep.c:191 kernel/locking/lockdep.c:4762) [ 30.597775][ C2] ? __pfx_icmp_route_lookup.constprop.0 (net/ipv4/icmp.c:480) [ 30.598255][ C2] ? find_held_lock (kernel/locking/lockdep.c:5353) [ 30.598639][ C2] ? __ip_options_echo (net/ipv4/ip_options.c:86) [ 30.599015][ C2] ? __icmp_send (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:871 net/ipv4/icmp.c:718) [ 30.599397][ C2] ? __lock_release (kernel/locking/lockdep.c:5539) [ 30.599779][ C2] __icmp_send (net/ipv4/icmp.c:746) [ 30.600167][ C2] ? __kmalloc_cache_noprof (mm/slub.c:4361) [ 30.600556][ C2] ? __pfx___icmp_send (net/ipv4/icmp.c:596) [ 30.600933][ C2] ? find_held_lock (kernel/locking/lockdep.c:5353) [ 30.601311][ C2] ? __ip_rt_update_pmtu (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:871 net/ipv4/route.c:1061) [ 30.601696][ C2] ? __ip_rt_update_pmtu (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:871 net/ipv4/route.c:1061) [ 30.602078][ C2] ? __pfx___ip_rt_update_pmtu (net/ipv4/route.c:1014) [ 30.602482][ C2] icmp_ndo_send (net/ipv4/icmp.c:798) [ 30.602862][ C2] ? __pfx_icmp_ndo_send (net/ipv4/icmp.c:798) [ 30.603239][ C2] ? ip_dst_mtu_maybe_forward.constprop.0 (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:871 ./include/net/ip.h:501) [ 30.603717][ C2] tnl_update_pmtu (net/ipv4/ip_tunnel.c:540) [ 30.604100][ C2] ip_tunnel_xmit (net/ipv4/ip_tunnel.c:819) [ 30.604497][ C2] ? validate_chain (kernel/locking/lockdep.c:143 kernel/locking/lockdep.c:174 kernel/locking/lockdep.c:3846 kernel/locking/lockdep.c:3879) [ 30.604873][ C2] ? __pfx_ip_tunnel_xmit (net/ipv4/ip_tunnel.c:685) [ 30.605262][ C2] ? __lock_acquire (kernel/locking/lockdep.c:5240) [ 30.605644][ C2] ? __pfx_skb_network_protocol (net/core/dev.c:3637) [ 30.606027][ C2] ipip_tunnel_xmit (net/ipv4/ipip.c:316) ipip [ 30.606412][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:745) [ 30.606805][ C2] dev_hard_start_xmit (./include/linux/netdevice.h:5219 ./include/linux/netdevice.h:5228 net/core/dev.c:3827 net/core/dev.c:3843) [ 30.607182][ C2] __dev_queue_xmit (net/core/dev.h:363 net/core/dev.c:4714) [ 30.607567][ C2] ? __lock_acquire (kernel/locking/lockdep.c:5240) [ 30.607947][ C2] ? __pfx___dev_queue_xmit (net/core/dev.c:4621) [ 30.608329][ C2] ? ip_finish_output2 (./include/net/neighbour.h:547 net/ipv4/ip_output.c:235) [ 30.608709][ C2] ? __lock_release (kernel/locking/lockdep.c:5539) [ 30.609091][ C2] ? neigh_connected_output (./include/linux/seqlock.h:74 ./include/linux/seqlock.h:836 net/core/neighbour.c:1584) [ 30.609472][ C2] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4475) [ 30.609849][ C2] ? neigh_connected_output (./include/linux/seqlock.h:74 ./include/linux/seqlock.h:836 net/core/neighbour.c:1584) [ 30.610237][ C2] ip_finish_output2 (./include/net/neighbour.h:547 net/ipv4/ip_output.c:235) [ 30.610632][ C2] ? ip_skb_dst_mtu (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:871 ./include/net/ip.h:501 ./include/net/ip.h:515) [ 30.611008][ C2] ? __pfx_ip_finish_output2 (net/ipv4/ip_output.c:199) [ 30.611395][ C2] ? __ip_finish_output (./include/linux/skbuff.h:1685 ./include/linux/skbuff.h:5079 net/ipv4/ip_output.c:307 net/ipv4/ip_output.c:295) [ 30.611769][ C2] ? __pfx_ip_rcv (net/ipv4/ip_input.c:567) [ 30.612145][ C2] ? process_backlog (./include/linux/local_lock_internal.h:54 net/core/dev.c:6442) [ 30.612544][ C2] __netif_receive_skb_one_core (net/core/dev.c:5979 (discriminator 4)) [ 30.613009][ C2] ? __pfx___netif_receive_skb_one_core (net/core/dev.c:5972) [ 30.613478][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 kernel/rcu/tree.c:745) [ 30.613855][ C2] ? lock_acquire (./include/trace/events/lock.h:24 kernel/locking/lockdep.c:5834) [ 30.614223][ C2] ? process_backlog (./include/linux/local_lock_internal.h:54 net/core/dev.c:6442) [ 30.614611][ C2] process_backlog (./include/linux/rcupdate.h:869 net/core/dev.c:6445) [ 30.614991][ C2] __napi_poll.constprop.0 (net/core/dev.c:7482) [ 30.615415][ C2] net_rx_action (net/core/dev.c:7546 net/core/dev.c:7673) [ 30.615800][ C2] ? __pfx_net_rx_action (net/core/dev.c:7635) [ 30.616173][ C2] ? clockevents_program_event (kernel/time/clockevents.c:326) [ 30.616558][ C2] ? __lock_release (kernel/locking/lockdep.c:5515) [ 30.616946][ C2] ? kvm_clock_get_cycles (./arch/x86/include/asm/preempt.h:95 arch/x86/kernel/kvmclock.c:80 arch/x86/kernel/kvmclock.c:86) [ 30.617320][ C2] ? ktime_get (kernel/time/timekeeping.c:251 (discriminator 4) kernel/time/timekeeping.c:360 (discriminator 4) kernel/time/timekeeping.c:778 (discriminator 4)) [ 30.617619][ C2] ? clockevents_program_event (kernel/time/clockevents.c:336 (discriminator 3)) [ 30.618086][ C2] ? hrtimer_interrupt (kernel/time/hrtimer.c:1900) [ 30.618476][ C2] handle_softirqs (kernel/softirq.c:579) [ 30.618854][ C2] ? __neigh_event_send (./include/linux/bottom_half.h:33 net/core/neighbour.c:1240) [ 30.619231][ C2] do_softirq (kernel/softirq.c:480 kernel/softirq.c:467) [ 30.619523][ C2] [ 30.619724][ C2] [ 30.619919][ C2] __local_bh_enable_ip (kernel/softirq.c:407) [ 30.620292][ C2] __neigh_event_send (net/core/neighbour.c:1241) [ 30.620685][ C2] ? ___neigh_create (net/core/neighbour.c:693) [ 30.621057][ C2] ? ___neigh_create (net/core/neighbour.c:693) [ 30.621444][ C2] neigh_resolve_output (net/core/neighbour.c:1545) [ 30.621815][ C2] ? __local_bh_enable_ip (./arch/x86/include/asm/irqflags.h:42 ./arch/x86/include/asm/irqflags.h:119 kernel/softirq.c:412) [ 30.622190][ C2] ? ___neigh_create (net/core/neighbour.c:693) [ 30.622577][ C2] ip_finish_output2 (./include/net/neighbour.h:547 net/ipv4/ip_output.c:235) [ 30.622953][ C2] ? ip_skb_dst_mtu (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:871 ./include/net/ip.h:501 ./include/net/ip.h:515) [ 30.623326][ C2] ? __pfx_ip_finish_output2 (net/ipv4/ip_output.c:199) [ 30.623722][ C2] ? __ip_finish_output (./include/linux/skbuff.h:1685 ./include/linux/skbuff.h:5079 net/ipv4/ip_output.c:307 net/ipv4/ip_output.c:295) [ 30.624096][ C2] ip_send_skb (./include/net/dst.h:461 net/ipv4/ip_output.c:129 net/ipv4/ip_output.c:1501) [ 30.624480][ C2] ? ipv4_dst_check (./include/linux/rcupdate.h:341 ./include/linux/rcupdate.h:871 net/ipv4/route.c:401 net/ipv4/route.c:1216) [ 30.624856][ C2] udp_send_skb (net/ipv4/udp.c:1195) [ 30.625232][ C2] ? inet_rtm_getroute_build_skb (./include/linux/skbuff.h:3048 net/ipv4/route.c:3175) [ 30.625709][ C2] udp_sendmsg (net/ipv4/udp.c:1484) [ 30.626097][ C2] ? __pfx_ip_generic_getfrag (net/ipv4/ip_output.c:927) [ 30.626490][ C2] ? __lock_acquire (kernel/locking/lockdep.c:5240) [ 30.626875][ C2] ? __pfx_udp_sendmsg (net/ipv4/udp.c:1271) [ 30.627249][ C2] ? find_held_lock (kernel/locking/lockdep.c:5353) [ 30.627636][ C2] ? find_held_lock (kernel/locking/lockdep.c:5353) [ 30.628019][ C2] ? __unix_dgram_recvmsg (net/unix/af_unix.c:2583) [ 30.628416][ C2] ? __pfx___skb_try_recv_datagram (net/core/datagram.c:246) [ 30.628877][ C2] ? __pfx___mutex_unlock_slowpath (kernel/locking/mutex.c:903) [ 30.629362][ C2] ? __unix_dgram_recvmsg (net/unix/af_unix.c:2583) [ 30.629741][ C2] sock_write_iter (net/socket.c:714 net/socket.c:729 net/socket.c:1179) [ 30.630115][ C2] ? __pfx___unix_dgram_recvmsg (net/unix/af_unix.c:2554) [ 30.630500][ C2] ? __pfx_sock_write_iter (net/socket.c:1163) [ 30.630890][ C2] vfs_write (fs/read_write.c:593 fs/read_write.c:686) [ 30.631174][ C2] ? __pfx___sys_recvfrom (net/socket.c:2255) [ 30.631563][ C2] ? __pfx_vfs_write (fs/read_write.c:667) [ 30.631948][ C2] ? find_held_lock (kernel/locking/lockdep.c:5353) [ 30.632327][ C2] ksys_write (fs/read_write.c:738) [ 30.632625][ C2] ? __pfx_ksys_write (fs/read_write.c:728) [ 30.633004][ C2] do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) [ 30.633387][ C2] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 30.633881][ C2] RIP: 0033:0x7fe71d7af337 [ 30.634284][ C2] Code: 0f 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: 0f 00 (bad) 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 [ 30.635596][ C2] RSP: 002b:00007ffc5288ab28 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 [ 30.636155][ C2] RAX: ffffffffffffffda RBX: 0000000000000000 RCX: 00007fe71d7af337 [ 30.636739][ C2] RDX: 0000000000000578 RSI: 0000561715f4f000 RDI: 0000000000000007 [ 30.637301][ C2] RBP: 0000561715f4f000 R08: 0000000000000578 R09: 0000000000000000 [ 30.637869][ C2] R10: 0000000000000040 R11: 0000000000000246 R12: 0000000000000007 Finger prints: __icmp_send:icmp_ndo_send:tnl_update_pmtu:ip_tunnel_xmit:ipip_tunnel_xmit