======================================
| [ 11.564881][ C0] #4: ffffffffb237dd40 (rcu_read_lock){....}-{1:3}, at: ip_local_deliver_finish (./include/linux/rcupdate.h:300 (discriminator 2) ./include/linux/rcupdate.h:840 (discriminator 2) net/ipv4/ip_input.c:240 (discriminator 2))
| [ 11.565191][ C0] #5: ff1100000bba2f68 (&vxlan->hash_lock){+.-.}-{3:3}, at: vxlan_snoop (./include/linux/spinlock.h:342 drivers/net/vxlan/vxlan_core.c:1487) vxlan
| [ 11.565508][ C0]
| [ 11.565508][ C0] stack backtrace:
[ 11.565718][ C0] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[ 11.565720][ C0] Call Trace:
[ 11.565721][ C0]
[ 11.565723][ C0] dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120)
[ 11.565728][ C0] lockdep_rcu_suspicious.cold (kernel/locking/lockdep.c:6876)
[ 11.565733][ C0] vxlan_fdb_create (drivers/net/vxlan/vxlan_core.c:872 (discriminator 8)) vxlan
[ 11.565738][ C0] ? vxlan_find_mac_rcu (./include/linux/rhashtable.h:648 (discriminator 8) ./include/linux/rhashtable.h:673 (discriminator 8) drivers/net/vxlan/vxlan_core.c:396 (discriminator 8)) vxlan
[ 11.565744][ C0] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1))
[ 11.565748][ C0] ? find_held_lock (kernel/locking/lockdep.c:5350)
[ 11.565750][ C0] ? vxlan_open (drivers/net/vxlan/vxlan_core.c:3030) vxlan
[ 11.565754][ C0] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535)
[ 11.565759][ C0] vxlan_fdb_update (drivers/net/vxlan/vxlan_core.c:1095 drivers/net/vxlan/vxlan_core.c:1138) vxlan
[ 11.565765][ C0] ? vxlan_fdb_create (./arch/x86/include/asm/bitops.h:202 (discriminator 1)) vxlan
[ 11.565769][ C0] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1))
[ 11.565771][ C0] ? do_raw_spin_lock (./include/linux/instrumented.h:55 ./include/linux/atomic/atomic-instrumented.h:1301 ./include/asm-generic/qspinlock.h:111 kernel/locking/spinlock_debug.c:116)
[ 11.565775][ C0] vxlan_snoop (drivers/net/vxlan/vxlan_core.c:1491) vxlan
[ 11.565781][ C0] ? __iptunnel_pull_header (net/ipv4/ip_tunnel_core.c:136)
[ 11.565785][ C0] vxlan_rcv (drivers/net/vxlan/vxlan_core.c:1634 (discriminator 1) drivers/net/vxlan/vxlan_core.c:1772 (discriminator 1)) vxlan
[ 11.565790][ C0] ? mark_usage (kernel/locking/lockdep.c:4674)
[ 11.565795][ C0] ? encap_bypass_if_local (drivers/net/vxlan/vxlan_core.c:2353) vxlan
[ 11.565800][ C0] ? udp4_lib_lookup2 (net/ipv4/udp.c:488)
[ 11.565803][ C0] ? udp_lib_lport_inuse2 (net/ipv4/udp.c:179 (discriminator 1))
[ 11.565807][ C0] ? __udp4_lib_lookup (net/ipv4/udp.c:714)
[ 11.565810][ C0] ? encap_bypass_if_local (drivers/net/vxlan/vxlan_core.c:2353) vxlan
[ 11.565814][ C0] ? udp_queue_rcv_one_skb (net/ipv4/udp.c:2389)
[ 11.565815][ C0] udp_queue_rcv_one_skb (net/ipv4/udp.c:2389)
[ 11.565817][ C0] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1))
[ 11.565818][ C0] ? perf_trace_lock_acquire (./include/trace/stages/stage5_get_offsets.h:16 ./include/trace/events/lock.h:23 ./include/trace/events/lock.h:23 ./include/trace/events/lock.h:23)
[ 11.565822][ C0] udp_unicast_rcv_skb (net/ipv4/udp.c:2577)
[ 11.565825][ C0] ? udp_rcv (net/ipv4/udp.c:742 (discriminator 3) net/ipv4/udp.c:2652 (discriminator 3))
[ 11.565826][ C0] udp_rcv (net/ipv4/udp.c:2654)
[ 11.565831][ C0] ? udp_sk_rx_dst_set (net/ipv4/udp.c:2452 (discriminator 1))
[ 11.565834][ C0] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1))
[ 11.565836][ C0] ? ip_local_deliver_finish (./include/linux/rcupdate.h:300 (discriminator 2) ./include/linux/rcupdate.h:840 (discriminator 2) net/ipv4/ip_input.c:240 (discriminator 2))
[ 11.565840][ C0] ip_protocol_deliver_rcu (net/ipv4/ip_input.c:207)
[ 11.565843][ C0] ? process_backlog (./include/linux/local_lock_internal.h:62 (discriminator 2) net/core/dev.c:6673 (discriminator 2))
[ 11.565845][ C0] ip_local_deliver_finish (net/ipv4/ip_input.c:241 (discriminator 1))
[ 11.565848][ C0] ip_local_deliver (./include/linux/netfilter.h:325 ./include/linux/netfilter.h:319 net/ipv4/ip_input.c:262)
[ 11.565850][ C0] ? ip_local_deliver_finish (net/ipv4/ip_input.c:232 (discriminator 42))
[ 11.565852][ C0] ? ip_rcv_finish_core (./include/linux/skbuff.h:1162 (discriminator 2) ./include/net/route.h:88 (discriminator 2) net/ipv4/ip_input.c:435 (discriminator 2))
[ 11.565854][ C0] ? __asan_memset (mm/kasan/shadow.c:84 (discriminator 1))
[ 11.565860][ C0] ? process_backlog (./include/linux/local_lock_internal.h:62 (discriminator 2) net/core/dev.c:6673 (discriminator 2))
[ 11.565862][ C0] ip_rcv (./include/linux/netfilter.h:325 ./include/linux/netfilter.h:319 net/ipv4/ip_input.c:612)
[ 11.565864][ C0] ? ip_local_deliver (./include/linux/rcupdate.h:869 (discriminator 3))
[ 11.565868][ C0] ? mark_usage (kernel/locking/lockdep.c:4674)
[ 11.565870][ C0] ? __lock_acquire (kernel/locking/lockdep.c:5237)
[ 11.565872][ C0] ? netdev_upper_dev_unlink (net/core/dev.c:9062)
[ 11.565875][ C0] __netif_receive_skb_one_core (net/core/dev.c:6234)
[ 11.565877][ C0] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1))
[ 11.565880][ C0] ? __netif_receive_skb_list_core (net/core/dev.c:6280 (discriminator 2))
[ 11.565882][ C0] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3))
[ 11.565887][ C0] process_backlog (net/core/dev.c:6675)
[ 11.565892][ C0] __napi_poll (net/core/dev.c:7734)
[ 11.565895][ C0] net_rx_action (net/core/dev.c:7797 net/core/dev.c:7954)
[ 11.565900][ C0] ? __napi_poll (./include/net/gro.h:507)
[ 11.565904][ C0] ? find_held_lock (kernel/locking/lockdep.c:5350)
[ 11.565910][ C0] ? _raw_spin_unlock_irqrestore (./include/linux/spinlock_api_smp.h:179 (discriminator 1) kernel/locking/spinlock.c:198 (discriminator 1))
[ 11.565913][ C0] ? note_gp_changes (kernel/rcu/tree.c:1334 (discriminator 31))
[ 11.565915][ C0] ? mark_held_locks (kernel/locking/lockdep.c:4325)
[ 11.565919][ C0] handle_softirqs (kernel/softirq.c:622)
[ 11.565924][ C0] ? _local_bh_enable (kernel/softirq.c:405 (discriminator 1))
[ 11.565928][ C0] __irq_exit_rcu (kernel/softirq.c:656 kernel/softirq.c:496 kernel/softirq.c:735)
[ 11.565930][ C0] irq_exit_rcu (kernel/softirq.c:752)
[ 11.565932][ C0] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1062 (discriminator 37) arch/x86/kernel/apic/apic.c:1062 (discriminator 37))
[ 11.565935][ C0]
[ 11.565936][ C0]
[ 11.565936][ C0] ? handle_mm_fault (mm/memory.c:6686)
[ 11.565939][ C0] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:674)
[ 11.565941][ C0] RIP: 0010:lock_acquire.part.0 (./arch/x86/include/asm/irqflags.h:158 (discriminator 1) kernel/locking/lockdep.c:5871 (discriminator 1))
[ 11.565944][ C0] Code: ff 65 0f c1 05 17 53 37 04 83 f8 01 4c 8b 14 24 0f 85 30 01 00 00 9c 58 f6 c4 02 0f 85 4d 01 00 00 4d 85 d2 0f 85 16 01 00 00 <48> 8b 44 24 30 65 48 2b 05 e9 0d 37 04 0f 85 43 01 00 00 48 83 c4
All code
========
0: ff 65 0f jmp *0xf(%rbp)
3: c1 05 17 53 37 04 83 roll $0x83,0x4375317(%rip) # 0x4375321
a: f8 clc
b: 01 4c 8b 14 add %ecx,0x14(%rbx,%rcx,4)
f: 24 0f and $0xf,%al
11: 85 30 test %esi,(%rax)
13: 01 00 add %eax,(%rax)
15: 00 9c 58 f6 c4 02 0f add %bl,0xf02c4f6(%rax,%rbx,2)
1c: 85 4d 01 test %ecx,0x1(%rbp)
1f: 00 00 add %al,(%rax)
21: 4d 85 d2 test %r10,%r10
24: 0f 85 16 01 00 00 jne 0x140
2a:* 48 8b 44 24 30 mov 0x30(%rsp),%rax <-- trapping instruction
2f: 65 48 2b 05 e9 0d 37 sub %gs:0x4370de9(%rip),%rax # 0x4370e20
36: 04
37: 0f 85 43 01 00 00 jne 0x180
3d: 48 rex.W
3e: 83 .byte 0x83
3f: c4 .byte 0xc4
Code starting with the faulting instruction
===========================================
0: 48 8b 44 24 30 mov 0x30(%rsp),%rax
5: 65 48 2b 05 e9 0d 37 sub %gs:0x4370de9(%rip),%rax # 0x4370df6
c: 04
d: 0f 85 43 01 00 00 jne 0x156
13: 48 rex.W
14: 83 .byte 0x83
15: c4 .byte 0xc4
[ 11.565945][ C0] RSP: 0000:ffa0000001b9fab0 EFLAGS: 00000206
[ 11.565947][ C0] RAX: 0000000000000046 RBX: 0000000000000000 RCX: 5755d8304f01a0f6
[ 11.565949][ C0] RDX: 0000000000000001 RSI: ffffffffb1e01084 RDI: ffffffffb187a960
[ 11.565949][ C0] RBP: 0000000000000001 R08: 0000000000000001 R09: ff110000050aaed0
[ 11.565950][ C0] R10: 0000000000000200 R11: 0000000000000001 R12: ff1100002e83bea0
[ 11.565951][ C0] R13: 0000000000000000 R14: 0000000000000001 R15: 0000000000000000
[ 11.565957][ C0] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3))
[ 11.565959][ C0] ? lock_acquire (./include/trace/events/lock.h:23 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22))
[ 11.565962][ C0] kmem_cache_alloc_noprof (./include/linux/local_lock_internal.h:53 (discriminator 2) mm/slub.c:4795 (discriminator 2) mm/slub.c:4933 (discriminator 2) mm/slub.c:4959 (discriminator 2))
[ 11.565964][ C0] ? kmem_cache_alloc_noprof (./include/linux/local_lock_internal.h:53 (discriminator 2) mm/slub.c:4795 (discriminator 2) mm/slub.c:4933 (discriminator 2) mm/slub.c:4959 (discriminator 2))
[ 11.565966][ C0] ? __alloc_object (mm/kmemleak.c:494 (discriminator 1) mm/kmemleak.c:676 (discriminator 1))
[ 11.565971][ C0] __alloc_object (mm/kmemleak.c:494 (discriminator 1) mm/kmemleak.c:676 (discriminator 1))
[ 11.565973][ C0] __create_object (mm/kmemleak.c:790)
[ 11.565975][ C0] ? kasan_save_track (mm/kasan/common.c:78)
[ 11.565978][ C0] kmem_cache_alloc_noprof (./include/linux/kmemleak.h:44 mm/slub.c:4625 mm/slub.c:4945 mm/slub.c:4959)
[ 11.565980][ C0] ? __anon_vma_prepare (mm/rmap.c:142 (discriminator 7) mm/rmap.c:194 (discriminator 7))
[ 11.565985][ C0] __anon_vma_prepare (mm/rmap.c:142 (discriminator 7) mm/rmap.c:194 (discriminator 7))
[ 11.565988][ C0] __vmf_anon_prepare (mm/memory.c:3829)
[ 11.565991][ C0] do_pte_missing (mm/internal.h:494 mm/memory.c:5880 mm/memory.c:5996 mm/memory.c:4566)
[ 11.565993][ C0] ? rcu_read_unlock (./include/linux/rcupdate.h:869 (discriminator 5))
[ 11.565996][ C0] ? rcu_read_unlock (./include/linux/rcupdate.h:869 (discriminator 6))
[ 11.565998][ C0] __handle_mm_fault (mm/memory.c:6379 mm/memory.c:6517)
[ 11.566000][ C0] ? __pmd_alloc (./include/linux/mm.h:1726)
[ 11.566002][ C0] ? lock_vma_under_rcu (./include/linux/rcupdate.h:310 (discriminator 2) ./include/linux/rcupdate.h:871 (discriminator 2) mm/mmap_lock.c:329 (discriminator 2))
[ 11.566004][ C0] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5574)
[ 11.566012][ C0] handle_mm_fault (mm/memory.c:6686)
[ 11.566014][ C0] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3))
[ 11.566017][ C0] do_user_addr_fault (arch/x86/mm/fault.c:1343)
[ 11.566022][ C0] ? irqentry_enter (./include/linux/irq-entry-common.h:108 ./include/linux/irq-entry-common.h:293 kernel/entry/common.c:116)
[ 11.566024][ C0] exc_page_fault (arch/x86/mm/fault.c:1483 arch/x86/mm/fault.c:1536)
[ 11.566026][ C0] asm_exc_page_fault (./arch/x86/include/asm/idtentry.h:595)
[ 11.566028][ C0] RIP: 0033:0x7fb6937fb76a
[ 11.566030][ C0] Code: 0f 61 c0 66 0f 70 c0 00 48 83 fa 10 0f 82 7e 00 00 00 48 83 fa 20 77 12 0f 11 44 17 f0 0f 11 07 c3 0f 11 47 e0 0f 11 47 f0 c3 <0f> 11 07 0f 11 47 10 48 01 d7 48 83 fa 40 76 e7 0f 11 40 20 0f 11
All code
========
0: 0f 61 c0 punpcklwd %mm0,%mm0
3: 66 0f 70 c0 00 pshufd $0x0,%xmm0,%xmm0
8: 48 83 fa 10 cmp $0x10,%rdx
c: 0f 82 7e 00 00 00 jb 0x90
12: 48 83 fa 20 cmp $0x20,%rdx
16: 77 12 ja 0x2a
18: 0f 11 44 17 f0 movups %xmm0,-0x10(%rdi,%rdx,1)
1d: 0f 11 07 movups %xmm0,(%rdi)
20: c3 ret
21: 0f 11 47 e0 movups %xmm0,-0x20(%rdi)
25: 0f 11 47 f0 movups %xmm0,-0x10(%rdi)
29: c3 ret
2a:* 0f 11 07 movups %xmm0,(%rdi) <-- trapping instruction
2d: 0f 11 47 10 movups %xmm0,0x10(%rdi)
31: 48 01 d7 add %rdx,%rdi
34: 48 83 fa 40 cmp $0x40,%rdx
38: 76 e7 jbe 0x21
3a: 0f 11 40 20 movups %xmm0,0x20(%rax)
3e: 0f .byte 0xf
3f: 11 .byte 0x11
Code starting with the faulting instruction
===========================================
0: 0f 11 07 movups %xmm0,(%rdi)
3: 0f 11 47 10 movups %xmm0,0x10(%rdi)
7: 48 01 d7 add %rdx,%rdi
a: 48 83 fa 40 cmp $0x40,%rdx
e: 76 e7 jbe 0xfffffffffffffff7
10: 0f 11 40 20 movups %xmm0,0x20(%rax)
14: 0f .byte 0xf
15: 11 .byte 0x11
[ 11.566031][ C0] RSP: 002b:00007ffd49d2bba8 EFLAGS: 00010206
[ 11.566033][ C0] RAX: 00007fb6937c5058 RBX: 00007fb6937cc810 RCX: 00007fb6937c5058
[ 11.566033][ C0] RDX: 0000000000000fa8 RSI: 0000000000000000 RDI: 00007fb6937c5058
[ 11.566034][ C0] RBP: 00007ffd49d2bfb0 R08: 00007fb6937c6000 R09: 0000000000000003
[ 11.566035][ C0] R10: 00007fb6937c6000 R11: 0000000000000206 R12: 0000000000000003
Finger prints:
vxlan_fdb_create:vxlan_fdb_update:vxlan_snoop:vxlan_rcv:udp_queue_rcv_one_skb