====================================== | [ 825.209042][ C1] #1: ffffffffa6b7dd40 (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)) | [ 825.209363][ C1] #2: ff110000183c2f68 (&vxlan->hash_lock){+.-.}-{3:3}, at: vxlan_snoop (./include/linux/spinlock.h:342 drivers/net/vxlan/vxlan_core.c:1487) vxlan | [ 825.209674][ C1] | [ 825.209674][ C1] stack backtrace: [ 825.209874][ C1] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 825.209875][ C1] Call Trace: [ 825.209877][ C1] [ 825.209879][ C1] dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120) [ 825.209885][ C1] lockdep_rcu_suspicious.cold (kernel/locking/lockdep.c:6876) [ 825.209891][ C1] vxlan_fdb_create (drivers/net/vxlan/vxlan_core.c:872 (discriminator 8)) vxlan [ 825.209896][ C1] ? 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 [ 825.209903][ C1] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 825.209907][ C1] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 825.209911][ C1] ? vxlan_open (drivers/net/vxlan/vxlan_core.c:3030) vxlan [ 825.209915][ C1] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 825.209917][ C1] ? rcu_read_lock_any_held (./include/linux/lockdep.h:249 kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 825.209923][ C1] vxlan_fdb_update (drivers/net/vxlan/vxlan_core.c:1095 drivers/net/vxlan/vxlan_core.c:1138) vxlan [ 825.209929][ C1] ? vxlan_fdb_create (./arch/x86/include/asm/bitops.h:202 (discriminator 1)) vxlan [ 825.209933][ C1] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 825.209935][ C1] ? 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) [ 825.209939][ C1] vxlan_snoop (drivers/net/vxlan/vxlan_core.c:1491) vxlan [ 825.209945][ C1] ? __iptunnel_pull_header (net/ipv4/ip_tunnel_core.c:136) [ 825.209950][ C1] vxlan_rcv (drivers/net/vxlan/vxlan_core.c:1634 (discriminator 1) drivers/net/vxlan/vxlan_core.c:1772 (discriminator 1)) vxlan [ 825.209954][ C1] ? fib_table_lookup (net/ipv4/fib_trie.c:1613) [ 825.209958][ C1] ? mark_usage (kernel/locking/lockdep.c:4674) [ 825.209963][ C1] ? encap_bypass_if_local (drivers/net/vxlan/vxlan_core.c:2353) vxlan [ 825.209968][ C1] ? udp4_lib_lookup2 (net/ipv4/udp.c:488) [ 825.209971][ C1] ? udp4_lib_lookup2 (./include/net/net_namespace.h:419 (discriminator 1) ./include/net/sock.h:713 (discriminator 1) net/ipv4/udp.c:371 (discriminator 1) net/ipv4/udp.c:475 (discriminator 1)) [ 825.209975][ C1] ? __udp4_lib_lookup (net/ipv4/udp.c:714) [ 825.209979][ C1] ? encap_bypass_if_local (drivers/net/vxlan/vxlan_core.c:2353) vxlan [ 825.209983][ C1] ? udp_queue_rcv_one_skb (net/ipv4/udp.c:2389) [ 825.209984][ C1] udp_queue_rcv_one_skb (net/ipv4/udp.c:2389) [ 825.209986][ C1] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 825.209988][ C1] ? 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) [ 825.209991][ C1] udp_unicast_rcv_skb (net/ipv4/udp.c:2577) [ 825.209994][ C1] ? udp_rcv (net/ipv4/udp.c:742 (discriminator 3) net/ipv4/udp.c:2652 (discriminator 3)) [ 825.209996][ C1] udp_rcv (net/ipv4/udp.c:2654) [ 825.210001][ C1] ? udp_sk_rx_dst_set (net/ipv4/udp.c:2452 (discriminator 1)) [ 825.210004][ C1] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 825.210006][ C1] ? 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)) [ 825.210010][ C1] ip_protocol_deliver_rcu (net/ipv4/ip_input.c:207) [ 825.210013][ C1] ? process_backlog (./include/linux/local_lock_internal.h:62 (discriminator 2) net/core/dev.c:6673 (discriminator 2)) [ 825.210015][ C1] ip_local_deliver_finish (net/ipv4/ip_input.c:241 (discriminator 1)) [ 825.210018][ C1] ip_local_deliver (./include/linux/netfilter.h:325 ./include/linux/netfilter.h:319 net/ipv4/ip_input.c:262) [ 825.210021][ C1] ? ip_local_deliver_finish (net/ipv4/ip_input.c:232 (discriminator 42)) [ 825.210023][ C1] ? 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)) [ 825.210025][ C1] ? __asan_memset (mm/kasan/shadow.c:84 (discriminator 1)) [ 825.210032][ C1] ? process_backlog (./include/linux/local_lock_internal.h:62 (discriminator 2) net/core/dev.c:6673 (discriminator 2)) [ 825.210033][ C1] ip_rcv (./include/linux/netfilter.h:325 ./include/linux/netfilter.h:319 net/ipv4/ip_input.c:612) [ 825.210036][ C1] ? ip_local_deliver (./include/linux/rcupdate.h:869 (discriminator 3)) [ 825.210039][ C1] ? mark_usage (kernel/locking/lockdep.c:4674) [ 825.210042][ C1] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 825.210044][ C1] ? netdev_upper_dev_unlink (net/core/dev.c:9062) [ 825.210047][ C1] __netif_receive_skb_one_core (net/core/dev.c:6234) [ 825.210050][ C1] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 825.210052][ C1] ? __netif_receive_skb_list_core (net/core/dev.c:6280 (discriminator 2)) [ 825.210054][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 825.210059][ C1] process_backlog (net/core/dev.c:6675) [ 825.210064][ C1] __napi_poll (net/core/dev.c:7734) [ 825.210067][ C1] net_rx_action (net/core/dev.c:7797 net/core/dev.c:7954) [ 825.210072][ C1] ? __napi_poll (./include/net/gro.h:507) [ 825.210076][ C1] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 825.210082][ C1] ? _raw_spin_unlock_irq (./include/linux/spinlock_api_smp.h:188 (discriminator 1) kernel/locking/spinlock.c:206 (discriminator 1)) [ 825.210085][ C1] ? run_timer_softirq (kernel/time/timer.c:2387 kernel/time/timer.c:2395 kernel/time/timer.c:2403) [ 825.210088][ C1] ? clockevents_program_event (kernel/time/clockevents.c:372) [ 825.210095][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 825.210099][ C1] handle_softirqs (kernel/softirq.c:622) [ 825.210104][ C1] ? _local_bh_enable (kernel/softirq.c:405 (discriminator 1)) [ 825.210109][ C1] __irq_exit_rcu (kernel/softirq.c:656 kernel/softirq.c:496 kernel/softirq.c:735) [ 825.210111][ C1] irq_exit_rcu (kernel/softirq.c:752) [ 825.210113][ C1] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1062 (discriminator 37) arch/x86/kernel/apic/apic.c:1062 (discriminator 37)) [ 825.210116][ C1] [ 825.210117][ C1] [ 825.210117][ C1] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472) [ 825.210120][ C1] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:674) [ 825.210122][ C1] RIP: 0010:pv_native_safe_halt (./arch/x86/include/asm/irqflags.h:48 arch/x86/kernel/paravirt.c:63) [ 825.210125][ C1] Code: 48 8b 3d 44 91 fb 01 e8 1f 00 00 00 48 2b 05 08 42 9b 00 c3 0f 1f 80 00 00 00 00 f3 0f 1e fa eb 07 0f 00 2d 63 5d 19 00 fb f4 0f 1f 40 d6 48 83 ec 20 8b 17 49 89 f8 83 e2 fe 41 89 d2 0f 01 All code ======== 0: 48 8b 3d 44 91 fb 01 mov 0x1fb9144(%rip),%rdi # 0x1fb914b 7: e8 1f 00 00 00 call 0x2b c: 48 2b 05 08 42 9b 00 sub 0x9b4208(%rip),%rax # 0x9b421b 13: c3 ret 14: 0f 1f 80 00 00 00 00 nopl 0x0(%rax) 1b: f3 0f 1e fa endbr64 1f: eb 07 jmp 0x28 21: 0f 00 2d 63 5d 19 00 verw 0x195d63(%rip) # 0x195d8b 28: fb sti 29: f4 hlt 2a:* c3 ret <-- trapping instruction 2b: 0f 1f 40 d6 nopl -0x2a(%rax) 2f: 48 83 ec 20 sub $0x20,%rsp 33: 8b 17 mov (%rdi),%edx 35: 49 89 f8 mov %rdi,%r8 38: 83 e2 fe and $0xfffffffe,%edx 3b: 41 89 d2 mov %edx,%r10d 3e: 0f .byte 0xf 3f: 01 .byte 0x1 Code starting with the faulting instruction =========================================== 0: c3 ret 1: 0f 1f 40 d6 nopl -0x2a(%rax) 5: 48 83 ec 20 sub $0x20,%rsp 9: 8b 17 mov (%rdi),%edx b: 49 89 f8 mov %rdi,%r8 e: 83 e2 fe and $0xfffffffe,%edx 11: 41 89 d2 mov %edx,%r10d 14: 0f .byte 0xf 15: 01 .byte 0x1 [ 825.210126][ C1] RSP: 0018:ffa0000000147e00 EFLAGS: 00000282 [ 825.210129][ C1] RAX: 0000000000e30dc9 RBX: ff11000001bba380 RCX: ffffffffa38e3c17 [ 825.210130][ C1] RDX: ff11000001bba380 RSI: ffffffffa6617342 RDI: ffffffffa607a960 [ 825.210131][ C1] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 [ 825.210132][ C1] R10: 0000000000000001 R11: 0000000000000001 R12: 1ff4000000028fc3 [ 825.210132][ C1] R13: 0000000000000000 R14: dffffc0000000000 R15: 0000000000000000 [ 825.210136][ C1] ? cpuidle_idle_call.constprop.0 (kernel/sched/idle.c:199) [ 825.210141][ C1] default_idle (./arch/x86/include/asm/paravirt.h:62 arch/x86/kernel/process.c:768) [ 825.210143][ C1] default_idle_call (kernel/sched/idle.c:122) [ 825.210144][ C1] cpuidle_idle_call.constprop.0 (kernel/sched/idle.c:199) [ 825.210147][ C1] ? arch_cpu_idle_exit+0x40/0x40 [ 825.210149][ C1] ? mark_tsc_async_resets (arch/x86/kernel/tsc_sync.c:49) [ 825.210153][ C1] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 825.210156][ C1] do_idle (kernel/sched/idle.c:355) [ 825.210158][ C1] cpu_startup_entry (kernel/sched/idle.c:454) [ 825.210161][ C1] start_secondary (arch/x86/kernel/smpboot.c:312) [ 825.210163][ C1] ? set_cpu_sibling_map (arch/x86/kernel/smpboot.c:733 (discriminator 4)) Finger prints: vxlan_fdb_create:vxlan_fdb_update:vxlan_snoop:vxlan_rcv:udp_queue_rcv_one_skb