====================================== | [ 1.516029] ------------[ cut here ]------------ | [ 1.516070] rcuref - imbalanced put() | [ 1.516071] WARNING: lib/rcuref.c:266 at 0x0, CPU#3: mausezahn/263 | [ 1.516127] Modules linked in: act_gact cls_flower sch_ingress vxlan [ 1.516212] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 1.516248] RIP: 0010:rcuref_put_slowpath (lib/rcuref.c:266 (discriminator 4)) [ 1.516282] Code: c0 75 0d c3 81 fe ff ff ff bf 77 0f 85 f6 78 03 31 c0 c3 c7 07 00 00 00 a0 eb f5 48 83 ec 08 48 89 3c 24 48 8d 3d 30 04 4a 01 <67> 48 0f b9 3a 48 8b 14 24 31 c0 c7 02 00 00 00 e0 48 83 c4 08 c3 All code ======== 0: c0 75 0d c3 shlb $0xc3,0xd(%rbp) 4: 81 fe ff ff ff bf cmp $0xbfffffff,%esi a: 77 0f ja 0x1b c: 85 f6 test %esi,%esi e: 78 03 js 0x13 10: 31 c0 xor %eax,%eax 12: c3 ret 13: c7 07 00 00 00 a0 movl $0xa0000000,(%rdi) 19: eb f5 jmp 0x10 1b: 48 83 ec 08 sub $0x8,%rsp 1f: 48 89 3c 24 mov %rdi,(%rsp) 23: 48 8d 3d 30 04 4a 01 lea 0x14a0430(%rip),%rdi # 0x14a045a 2a:* 67 48 0f b9 3a ud1 (%edx),%rdi <-- trapping instruction 2f: 48 8b 14 24 mov (%rsp),%rdx 33: 31 c0 xor %eax,%eax 35: c7 02 00 00 00 e0 movl $0xe0000000,(%rdx) 3b: 48 83 c4 08 add $0x8,%rsp 3f: c3 ret Code starting with the faulting instruction =========================================== 0: 67 48 0f b9 3a ud1 (%edx),%rdi 5: 48 8b 14 24 mov (%rsp),%rdx 9: 31 c0 xor %eax,%eax b: c7 02 00 00 00 e0 movl $0xe0000000,(%rdx) 11: 48 83 c4 08 add $0x8,%rsp 15: c3 ret [ 1.516382] RSP: 0018:ff41b73600293768 EFLAGS: 00010292 [ 1.516412] RAX: 00000000dfffffff RBX: ff1441b2c33d80c0 RCX: ff1441b2c33d80c0 [ 1.516451] RDX: ff1441b2c33d8128 RSI: 00000000dfffffff RDI: ffffffffbce7e6f0 [ 1.516491] RBP: ff41b736002937d8 R08: ff1441b2c3325e00 R09: 0000000000000001 [ 1.516529] R10: ff1441b2c6b32480 R11: 0000000000000000 R12: ff41b73600293858 [ 1.516567] R13: ff1441b2c18f9c00 R14: 00000000010200c0 R15: 0000000080000000 [ 1.516609] FS: 00007f6dbbc88c40(0000) GS:ff1441b34194c000(0000) knlGS:0000000000000000 [ 1.516655] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 1.516688] CR2: 00007ffcb4f65fc8 CR3: 0000000004d39002 CR4: 0000000000771ef0 [ 1.516738] PKRU: 55555554 [ 1.516752] Call Trace: [ 1.516771] [ 1.516785] dst_release (./arch/x86/include/asm/preempt.h:95 (discriminator 1) ./include/linux/rcuref.h:174 (discriminator 1) net/core/dst.c:167 (discriminator 1)) [ 1.516814] rt_cache_route (net/ipv4/route.c:1518) [ 1.516837] ? dst_alloc (./include/net/dst_ops.h:59 net/core/dst.c:75 net/core/dst.c:93) [ 1.516861] rt_set_nexthop.isra.0 (net/ipv4/route.c:1622 (discriminator 1)) [ 1.516899] ? rt_dst_alloc (net/ipv4/route.c:1654) [ 1.516922] ip_route_output_key_hash_rcu (./include/net/lwtunnel.h:140 net/ipv4/route.c:2682 net/ipv4/route.c:2875) [ 1.516953] ip_route_output_flow (net/ipv4/route.c:2705 ./include/net/route.h:169 net/ipv4/route.c:2932) [ 1.516979] udp_tunnel_dst_lookup (net/ipv4/udp_tunnel_core.c:261 (discriminator 1)) [ 1.517010] vxlan_xmit_one (drivers/net/vxlan/vxlan_core.c:2472 (discriminator 4)) vxlan [ 1.517042] ? __fuse_simple_request (fs/fuse/dev.c:702) [ 1.517076] ? vxlan_xmit (drivers/net/vxlan/vxlan_core.c:2829) vxlan [ 1.517104] vxlan_xmit (drivers/net/vxlan/vxlan_core.c:2829) vxlan [ 1.517134] ? filemap_get_read_batch (mm/filemap.c:2477) [ 1.517164] ? get_page_from_freelist (mm/page_alloc.c:1226 (discriminator 1) mm/page_alloc.c:1843 (discriminator 1) mm/page_alloc.c:1853 (discriminator 1) mm/page_alloc.c:3879 (discriminator 1)) [ 1.517193] ? dev_hard_start_xmit (./include/linux/netdevice.h:5272 ./include/linux/netdevice.h:5281 net/core/dev.c:3853 net/core/dev.c:3869) [ 1.517227] dev_hard_start_xmit (./include/linux/netdevice.h:5272 ./include/linux/netdevice.h:5281 net/core/dev.c:3853 net/core/dev.c:3869) [ 1.517249] __dev_queue_xmit (net/core/dev.c:4817) [ 1.517270] ? __alloc_skb (net/core/skbuff.c:706) [ 1.517294] ? alloc_skb_with_frags (./include/linux/skbuff.h:1383 net/core/skbuff.c:6715) [ 1.517318] packet_sendmsg (net/packet/af_packet.c:3076 (discriminator 1) net/packet/af_packet.c:3108 (discriminator 1)) [ 1.517343] ? account_locked_vm (./include/linux/mmap_lock.h:355 mm/util.c:559 mm/util.c:549) [ 1.517367] __sys_sendto (net/socket.c:721 (discriminator 1) net/socket.c:733 (discriminator 1) net/socket.c:2222 (discriminator 1)) [ 1.517391] __x64_sys_sendto (net/socket.c:2229 (discriminator 1) net/socket.c:2225 (discriminator 1) net/socket.c:2225 (discriminator 1)) [ 1.517411] do_syscall_64 (arch/x86/entry/syscall_64.c:63 (discriminator 1) arch/x86/entry/syscall_64.c:94 (discriminator 1)) [ 1.517437] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:131) [ 1.517473] RIP: 0033:0x7f6dbbe3bc5e [ 1.517505] Code: 4d 89 d8 e8 14 bd 00 00 4c 8b 5d f8 41 8b 93 08 03 00 00 59 5e 48 83 f8 fc 74 11 c9 c3 0f 1f 80 00 00 00 00 48 8b 45 10 0f 05 c3 83 e2 39 83 fa 08 75 e7 e8 13 ff ff ff 0f 1f 00 f3 0f 1e fa All code ======== 0: 4d 89 d8 mov %r11,%r8 3: e8 14 bd 00 00 call 0xbd1c 8: 4c 8b 5d f8 mov -0x8(%rbp),%r11 c: 41 8b 93 08 03 00 00 mov 0x308(%r11),%edx 13: 59 pop %rcx 14: 5e pop %rsi 15: 48 83 f8 fc cmp $0xfffffffffffffffc,%rax 19: 74 11 je 0x2c 1b: c9 leave 1c: c3 ret 1d: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) 24: 48 8b 45 10 mov 0x10(%rbp),%rax 28: 0f 05 syscall 2a:* c9 leave <-- trapping instruction 2b: c3 ret 2c: 83 e2 39 and $0x39,%edx 2f: 83 fa 08 cmp $0x8,%edx 32: 75 e7 jne 0x1b 34: e8 13 ff ff ff call 0xffffffffffffff4c 39: 0f 1f 00 nopl (%rax) 3c: f3 0f 1e fa endbr64 Code starting with the faulting instruction =========================================== 0: c9 leave 1: c3 ret 2: 83 e2 39 and $0x39,%edx 5: 83 fa 08 cmp $0x8,%edx 8: 75 e7 jne 0xfffffffffffffff1 a: e8 13 ff ff ff call 0xffffffffffffff22 f: 0f 1f 00 nopl (%rax) 12: f3 0f 1e fa endbr64 [ 1.517596] RSP: 002b:00007ffcb4f6bed0 EFLAGS: 00000202 ORIG_RAX: 000000000000002c [ 1.517639] RAX: ffffffffffffffda RBX: 000055c730be6830 RCX: 00007f6dbbe3bc5e [ 1.517689] RDX: 0000000000000064 RSI: 000055c730be6ac2 RDI: 0000000000000005 [ 1.517726] RBP: 00007ffcb4f6bee0 R08: 00007ffcb4f6bf30 R09: 0000000000000014 [ 1.517764] R10: 0000000000000000 R11: 0000000000000202 R12: 000055c730be6ac2 Finger prints: rcuref_put_slowpath:dst_release:rt_cache_route:ip_route_output_key_hash_rcu:ip_route_output_flow