====================================== | [ 38.132355][ T290] veth1: entered promiscuous mode | [ 41.284732][ C3] ------------[ cut here ]------------ | [ 41.285048][ C3] kernel BUG at net/core/skbuff.c:3505! | [ 41.285230][ C3] invalid opcode: 0000 [#1] PREEMPT SMP KASAN NOPTI [ 41.285639][ C3] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 41.285966][ C3] RIP: 0010:__skb_checksum (net/core/skbuff.c:3505 (discriminator 1)) [ 41.286122][ C3] Code: 44 89 14 24 ff d0 0f 1f 00 4c 8b 44 24 08 44 8b 14 24 41 89 c1 eb a5 89 e8 e9 2d fe ff ff 41 ff d5 0f 1f 00 e9 1f fa ff ff 90 <0f> 0b 48 8b 7c 24 10 89 54 24 48 48 89 44 24 40 e8 17 a6 91 fe 8b All code ======== 0: 44 89 14 24 mov %r10d,(%rsp) 4: ff d0 call *%rax 6: 0f 1f 00 nopl (%rax) 9: 4c 8b 44 24 08 mov 0x8(%rsp),%r8 e: 44 8b 14 24 mov (%rsp),%r10d 12: 41 89 c1 mov %eax,%r9d 15: eb a5 jmp 0xffffffffffffffbc 17: 89 e8 mov %ebp,%eax 19: e9 2d fe ff ff jmp 0xfffffffffffffe4b 1e: 41 ff d5 call *%r13 21: 0f 1f 00 nopl (%rax) 24: e9 1f fa ff ff jmp 0xfffffffffffffa48 29: 90 nop 2a:* 0f 0b ud2 <-- trapping instruction 2c: 48 8b 7c 24 10 mov 0x10(%rsp),%rdi 31: 89 54 24 48 mov %edx,0x48(%rsp) 35: 48 89 44 24 40 mov %rax,0x40(%rsp) 3a: e8 17 a6 91 fe call 0xfffffffffe91a656 3f: 8b .byte 0x8b Code starting with the faulting instruction =========================================== 0: 0f 0b ud2 2: 48 8b 7c 24 10 mov 0x10(%rsp),%rdi 7: 89 54 24 48 mov %edx,0x48(%rsp) b: 48 89 44 24 40 mov %rax,0x40(%rsp) 10: e8 17 a6 91 fe call 0xfffffffffe91a62c 15: 8b .byte 0x8b [ 41.286633][ C3] RSP: 0018:ffffc90000278920 EFLAGS: 00010202 [ 41.286817][ C3] RAX: 0000000000000000 RBX: 0000000000000000 RCX: 1ffff11000f25439 [ 41.287036][ C3] RDX: 0000000000000040 RSI: 0000000000000000 RDI: ffff88800792a1c8 [ 41.287253][ C3] RBP: 0000000000000000 R08: ffffc900002789e0 R09: fffffbfff52dc5ea [ 41.287469][ C3] R10: ffffffffa96e2f57 R11: ffff8880059eacd8 R12: 0000000000000000 [ 41.287688][ C3] R13: 0000000000000000 R14: ffffc900002789e0 R15: ffff888002a78288 [ 41.287904][ C3] FS: 00007fb752da9300(0000) GS:ffff888036180000(0000) knlGS:0000000000000000 [ 41.288164][ C3] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 41.288346][ C3] CR2: 00007ffe10e99ff8 CR3: 0000000006ff4006 CR4: 0000000000770ef0 [ 41.288561][ C3] DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 [ 41.288780][ C3] DR3: 0000000000000000 DR6: 00000000fffe0ff0 DR7: 0000000000000400 [ 41.288994][ C3] PKRU: 55555554 [ 41.289107][ C3] Call Trace: [ 41.289219][ C3] [ 41.289293][ C3] ? die (arch/x86/kernel/dumpstack.c:421 arch/x86/kernel/dumpstack.c:434 arch/x86/kernel/dumpstack.c:447) [ 41.289406][ C3] ? do_trap (arch/x86/kernel/traps.c:113 arch/x86/kernel/traps.c:154) [ 41.289517][ C3] ? __skb_checksum (net/core/skbuff.c:3505 (discriminator 1)) [ 41.289663][ C3] ? do_error_trap (./arch/x86/include/asm/traps.h:58 arch/x86/kernel/traps.c:175) [ 41.289806][ C3] ? __skb_checksum (net/core/skbuff.c:3505 (discriminator 1)) [ 41.289953][ C3] ? __skb_checksum (net/core/skbuff.c:3505 (discriminator 1)) [ 41.290097][ C3] ? handle_invalid_op (arch/x86/kernel/traps.c:213) [ 41.290246][ C3] ? __skb_checksum (net/core/skbuff.c:3505 (discriminator 1)) [ 41.290396][ C3] ? exc_invalid_op (arch/x86/kernel/traps.c:265) [ 41.290543][ C3] ? asm_exc_invalid_op (./arch/x86/include/asm/idtentry.h:568) [ 41.290693][ C3] ? __skb_checksum (net/core/skbuff.c:3505 (discriminator 1)) [ 41.290840][ C3] __skb_checksum_complete (net/core/skbuff.c:3643) [ 41.290986][ C3] ? __pfx___skb_checksum_complete (net/core/skbuff.c:3637) [ 41.291167][ C3] ? __pfx_csum_partial_ext (./include/net/checksum.h:120) [ 41.291310][ C3] ? __pfx_csum_block_add_ext (./include/net/checksum.h:103) [ 41.291456][ C3] icmp_rcv (./include/linux/skbuff.h:4567 net/ipv4/icmp.c:1213) [ 41.291573][ C3] ip_protocol_deliver_rcu (net/ipv4/ip_input.c:205 (discriminator 5)) [ 41.291720][ C3] ip_local_deliver_finish (./include/linux/rcupdate.h:779 net/ipv4/ip_input.c:234) [ 41.291864][ C3] ip_local_deliver (./include/linux/netfilter.h:314 ./include/linux/netfilter.h:308 net/ipv4/ip_input.c:254) [ 41.292008][ C3] ? __pfx_ip_local_deliver (net/ipv4/ip_input.c:243) [ 41.292152][ C3] ? sock_wfree (./include/linux/rcupdate.h:308 ./include/linux/rcupdate.h:783 net/core/sock.c:2471) [ 41.292298][ C3] ? ip_rcv_finish_core.constprop.0 (net/ipv4/ip_input.c:367) [ 41.292482][ C3] ? vrf_l3_rcv (drivers/net/vrf.c:1222 drivers/net/vrf.c:1456 drivers/net/vrf.c:1468) vrf [ 41.292633][ C3] ip_rcv (./include/net/dst.h:460 net/ipv4/ip_input.c:449 ./include/linux/netfilter.h:314 ./include/linux/netfilter.h:308 net/ipv4/ip_input.c:569) [ 41.292745][ C3] ? __pfx_ip_rcv (net/ipv4/ip_input.c:562) [ 41.292890][ C3] ? lock_acquire.part.0 (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5756) [ 41.293038][ C3] ? process_backlog (./include/linux/rcupdate.h:298 ./include/linux/rcupdate.h:750 net/core/dev.c:6051) [ 41.293185][ C3] ? __pfx_ip_rcv (net/ipv4/ip_input.c:562) [ 41.293329][ C3] __netif_receive_skb_one_core (net/core/dev.c:5610 (discriminator 4)) [ 41.293508][ C3] ? __pfx___netif_receive_skb_one_core (net/core/dev.c:5603) [ 41.293690][ C3] ? lock_acquire (./include/trace/events/lock.h:24 kernel/locking/lockdep.c:5725) [ 41.293833][ C3] ? process_backlog (./include/linux/rcupdate.h:298 ./include/linux/rcupdate.h:750 net/core/dev.c:6051) [ 41.293982][ C3] process_backlog (./include/linux/rcupdate.h:779 net/core/dev.c:6053) [ 41.294141][ C3] __napi_poll.constprop.0 (net/core/dev.c:6703) [ 41.294285][ C3] net_rx_action (net/core/dev.c:6772 net/core/dev.c:6886) [ 41.294431][ C3] ? __pfx_net_rx_action (net/core/dev.c:6850) [ 41.294575][ C3] ? hlock_class (kernel/locking/lockdep.c:223) [ 41.294721][ C3] ? mark_held_locks (kernel/locking/lockdep.c:4274) [ 41.294867][ C3] __do_softirq (kernel/softirq.c:553) [ 41.295015][ C3] ? __dev_queue_xmit (./include/linux/rcupdate.h:308 ./include/linux/rcupdate.h:818 net/core/dev.c:4399) [ 41.295159][ C3] do_softirq (kernel/softirq.c:454 kernel/softirq.c:441) [ 41.295274][ C3] [ 41.295352][ C3] [ 41.295432][ C3] __local_bh_enable_ip (kernel/softirq.c:381) [ 41.295592][ C3] ? __dev_queue_xmit (./include/linux/rcupdate.h:308 ./include/linux/rcupdate.h:818 net/core/dev.c:4399) [ 41.295736][ C3] __dev_queue_xmit (net/core/dev.c:4400) [ 41.295881][ C3] ? mark_held_locks (kernel/locking/lockdep.c:4274) [ 41.296025][ C3] ? eth_header (net/ethernet/eth.c:100) [ 41.296172][ C3] ? __pfx___dev_queue_xmit (net/core/dev.c:4281) [ 41.296315][ C3] ? neigh_resolve_output (./include/linux/netdevice.h:3226 net/core/neighbour.c:1558 net/core/neighbour.c:1543) [ 41.296468][ C3] ip_finish_output2 (./include/net/neighbour.h:542 net/ipv4/ip_output.c:235) [ 41.296618][ C3] ? __pfx_get_random_u32 (drivers/char/random.c:532) [ 41.296766][ C3] ? __lock_acquire (kernel/locking/lockdep.c:5137) [ 41.296912][ C3] ? __pfx_raw_getfrag (net/ipv4/raw.c:446) [ 41.297058][ C3] ? __pfx_ip_finish_output2 (net/ipv4/ip_output.c:199) [ 41.297204][ C3] ? __pfx_vrf_ip_out_direct_finish (drivers/net/vrf.c:972) vrf [ 41.297390][ C3] ? __ip_finish_output (./include/linux/skbuff.h:1624 ./include/linux/skbuff.h:4942 net/ipv4/ip_output.c:307 net/ipv4/ip_output.c:295) [ 41.297540][ C3] ip_output (./include/linux/netfilter.h:303 net/ipv4/ip_output.c:433) [ 41.297653][ C3] ? __ip_local_out (./include/net/l3mdev.h:203 ./include/net/l3mdev.h:213 net/ipv4/ip_output.c:112) [ 41.297796][ C3] ? __pfx_ip_output (net/ipv4/ip_output.c:427) [ 41.297940][ C3] ? __ip_make_skb (net/ipv4/ip_output.c:1379 net/ipv4/ip_output.c:1487) [ 41.298085][ C3] ? __pfx_raw_getfrag (net/ipv4/raw.c:446) [ 41.298231][ C3] ? ip_append_data (net/ipv4/ip_output.c:1368 net/ipv4/ip_output.c:1347) [ 41.298375][ C3] ip_push_pending_frames (./include/net/dst.h:450 net/ipv4/ip_output.c:129 net/ipv4/ip_output.c:1496 net/ipv4/ip_output.c:1516) [ 41.298519][ C3] raw_sendmsg (net/ipv4/raw.c:648) [ 41.298669][ C3] ? __pfx_validate_chain (kernel/locking/lockdep.c:3825) [ 41.298817][ C3] ? __pfx_raw_sendmsg (net/ipv4/raw.c:476) [ 41.298961][ C3] ? __lock_acquire (kernel/locking/lockdep.c:5137) [ 41.299107][ C3] ? find_held_lock (kernel/locking/lockdep.c:5244) [ 41.299253][ C3] ? __lock_release (kernel/locking/lockdep.c:5430) [ 41.299398][ C3] ? __might_fault (mm/memory.c:6080 mm/memory.c:6073) [ 41.299543][ C3] ? __pfx___lock_release (kernel/locking/lockdep.c:5406) [ 41.299688][ C3] ? 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) [ 41.299836][ C3] ? lock_acquire (./include/trace/events/lock.h:24 kernel/locking/lockdep.c:5725) [ 41.299978][ C3] ? __might_fault (mm/memory.c:6080 mm/memory.c:6073) [ 41.300125][ C3] ? __might_fault (mm/memory.c:6080 mm/memory.c:6073) [ 41.300271][ C3] ? __sys_sendto (net/socket.c:730 net/socket.c:745 net/socket.c:2191) [ 41.300419][ C3] __sys_sendto (net/socket.c:730 net/socket.c:745 net/socket.c:2191) [ 41.300565][ C3] ? __pfx___sys_sendto (net/socket.c:2161) [ 41.300724][ C3] ? do_user_addr_fault (./include/linux/rcupdate.h:298 ./include/linux/rcupdate.h:750 ./include/linux/mm.h:686 arch/x86/mm/fault.c:1357) [ 41.300871][ C3] ? reacquire_held_locks (kernel/locking/lockdep.c:5279) [ 41.301016][ C3] ? __lock_release (kernel/locking/lockdep.c:5430) [ 41.301164][ C3] ? do_user_addr_fault (./include/linux/rcupdate.h:308 ./include/linux/rcupdate.h:783 ./include/linux/mm.h:688 arch/x86/mm/fault.c:1357) [ 41.301312][ C3] ? __pfx___lock_release (kernel/locking/lockdep.c:5406) [ 41.301456][ C3] ? __up_read (./arch/x86/include/asm/atomic64_64.h:79 ./include/linux/atomic/atomic-arch-fallback.h:2735 ./include/linux/atomic/atomic-long.h:184 ./include/linux/atomic/atomic-instrumented.h:3289 kernel/locking/rwsem.c:1347) [ 41.301606][ C3] ? __pfx___up_read (kernel/locking/rwsem.c:1339) [ 41.301758][ C3] ? do_user_addr_fault (./include/linux/rcupdate.h:308 ./include/linux/rcupdate.h:783 ./include/linux/mm.h:688 arch/x86/mm/fault.c:1357) [ 41.301917][ C3] __x64_sys_sendto (net/socket.c:2199) [ 41.302063][ C3] ? lockdep_hardirqs_on_prepare.part.0 (kernel/locking/lockdep.c:4300 kernel/locking/lockdep.c:4359) [ 41.302242][ C3] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 41.302387][ C3] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:129) [ 41.302574][ C3] RIP: 0033:0x7fb75307f85a [ 41.302726][ C3] Code: d8 64 89 02 48 c7 c0 ff ff ff ff eb b8 0f 1f 00 f3 0f 1e fa 41 89 ca 64 8b 04 25 18 00 00 00 85 c0 75 15 b8 2c 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 7e c3 0f 1f 44 00 00 41 54 48 83 ec 30 44 89 All code ======== 0: d8 64 89 02 fsubs 0x2(%rcx,%rcx,4) 4: 48 c7 c0 ff ff ff ff mov $0xffffffffffffffff,%rax b: eb b8 jmp 0xffffffffffffffc5 d: 0f 1f 00 nopl (%rax) 10: f3 0f 1e fa endbr64 14: 41 89 ca mov %ecx,%r10d 17: 64 8b 04 25 18 00 00 mov %fs:0x18,%eax 1e: 00 1f: 85 c0 test %eax,%eax 21: 75 15 jne 0x38 23: b8 2c 00 00 00 mov $0x2c,%eax 28: 0f 05 syscall 2a:* 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax <-- trapping instruction 30: 77 7e ja 0xb0 32: c3 ret 33: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 38: 41 54 push %r12 3a: 48 83 ec 30 sub $0x30,%rsp 3e: 44 rex.R 3f: 89 .byte 0x89 Code starting with the faulting instruction =========================================== 0: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax 6: 77 7e ja 0x86 8: c3 ret 9: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) e: 41 54 push %r12 10: 48 83 ec 30 sub $0x30,%rsp 14: 44 rex.R 15: 89 .byte 0x89 [ 41.303246][ C3] RSP: 002b:00007ffe10e9ab68 EFLAGS: 00000246 ORIG_RAX: 000000000000002c [ 41.303463][ C3] RAX: ffffffffffffffda RBX: 0000000000000038 RCX: 00007fb75307f85a [ 41.303687][ C3] RDX: 0000000000000040 RSI: 0000000000f2d340 RDI: 0000000000000005 [ 41.303906][ C3] RBP: 00007ffe10e9abc0 R08: 00000000004185e0 R09: 0000000000000010 [ 41.304140][ C3] R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000054 Finger prints: __skb_checksum:__skb_checksum_complete:icmp_rcv:ip_protocol_deliver_rcu