====================================== | [ 139.988275][ C2] #3: ffffffff87591d40 (rcu_read_lock){....}-{1:3}, at: ip6_send_skb (./include/linux/rcupdate.h:300 (discriminator 2) ./include/linux/rcupdate.h:840 (discriminator 2) net/ipv6/ip6_output.c:2013 (discriminator 2)) | [ 139.988429][ C2] #4: ffffffff87591d40 (rcu_read_lock){....}-{1:3}, at: ip6_output (./include/linux/rcupdate.h:300 (discriminator 2) ./include/linux/rcupdate.h:840 (discriminator 2) net/ipv6/ip6_output.c:234 (discriminator 2)) | [ 139.988607][ C2] | [ 139.988607][ C2] stack backtrace: [ 139.988718][ C2] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 139.988720][ C2] Call Trace: [ 139.988721][ C2] [ 139.988723][ C2] dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120) [ 139.988726][ C2] print_circular_bug.cold (kernel/locking/lockdep.c:2043) [ 139.988729][ C2] check_noncircular (kernel/locking/lockdep.c:2175) [ 139.988732][ C2] check_prev_add (kernel/locking/lockdep.c:3165) [ 139.988734][ C2] validate_chain (kernel/locking/lockdep.c:3284 kernel/locking/lockdep.c:3908) [ 139.988736][ C2] __lock_acquire (kernel/locking/lockdep.c:5237) [ 139.988739][ C2] lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 139.988741][ C2] ? ___neigh_create (./include/linux/spinlock.h:348 net/core/neighbour.c:670) [ 139.988742][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 139.988745][ C2] ? lock_acquire (./include/trace/events/lock.h:23 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22)) [ 139.988747][ C2] _raw_spin_lock_bh (./include/linux/spinlock_api_smp.h:150 (discriminator 1) kernel/locking/spinlock.c:182 (discriminator 1)) [ 139.988749][ C2] ? ___neigh_create (./include/linux/spinlock.h:348 net/core/neighbour.c:670) [ 139.988750][ C2] ___neigh_create (./include/linux/spinlock.h:348 net/core/neighbour.c:670) [ 139.988752][ C2] ip6_finish_output2 (net/ipv6/ip6_output.c:128 (discriminator 1)) [ 139.988754][ C2] ? ip6_xmit (net/ipv6/ip6_output.c:328) [ 139.988755][ C2] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 139.988757][ C2] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 139.988759][ C2] ? ip6_mtu (./include/linux/rcupdate.h:310 (discriminator 2) ./include/linux/rcupdate.h:871 (discriminator 2) ./include/net/ip6_route.h:384 (discriminator 2) net/ipv6/route.c:3290 (discriminator 2)) [ 139.988761][ C2] ip6_finish_output (net/ipv6/ip6_output.c:208 net/ipv6/ip6_output.c:219) [ 139.988763][ C2] ip6_output (./include/linux/netfilter.h:314 net/ipv6/ip6_output.c:246) [ 139.988765][ C2] ? ip6_finish_output (./include/linux/skbuff.h:1178) [ 139.988766][ C2] ? l3mdev_l3_out.constprop.0 (./include/linux/rcupdate.h:873 ./include/net/l3mdev.h:222) [ 139.988770][ C2] ip6_send_skb (net/ipv6/ip6_output.c:2014) [ 139.988772][ C2] icmp6_send (net/ipv6/icmp.c:826) [ 139.988774][ C2] ? icmpv6_push_pending_frames (net/ipv6/icmp.c:291 (discriminator 1)) [ 139.988776][ C2] ? sched_balance_find_src_group (kernel/sched/fair.c:12797) [ 139.988778][ C2] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 139.988779][ C2] ? rcu_read_lock_any_held (./include/linux/lockdep.h:249 kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 139.988783][ C2] ? rcu_read_lock_any_held (./include/linux/lockdep.h:249 kernel/rcu/update.c:386 kernel/rcu/update.c:380) [ 139.988786][ C2] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 139.988787][ C2] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 139.988789][ C2] ip6_link_failure (./include/linux/icmpv6.h:24 net/ipv6/route.c:2869) [ 139.988791][ C2] ndisc_error_report (./include/net/dst.h:438 net/ipv6/ndisc.c:734) [ 139.988793][ C2] neigh_invalidate (net/core/neighbour.c:1057) [ 139.988794][ C2] ? neigh_periodic_work (net/core/neighbour.c:973 (discriminator 3)) [ 139.988796][ C2] neigh_timer_handler (net/core/neighbour.c:1149) [ 139.988798][ C2] ? neigh_periodic_work (net/core/neighbour.c:973 (discriminator 3)) [ 139.988799][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 139.988800][ C2] call_timer_fn (kernel/time/timer.c:1748) [ 139.988802][ C2] ? detach_if_pending (./include/linux/list.h:1143) [ 139.988803][ C2] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 139.988805][ C2] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 139.988807][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 139.988808][ C2] __run_timers (kernel/time/timer.c:1799 kernel/time/timer.c:2374) [ 139.988809][ C2] ? neigh_periodic_work (net/core/neighbour.c:973 (discriminator 3)) [ 139.988811][ C2] ? __bpf_trace_itimer_expire (./include/trace/events/timer.h:407) [ 139.988812][ C2] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 139.988815][ C2] ? __rwlock_init (kernel/locking/spinlock_debug.c:48) [ 139.988817][ C2] run_timer_softirq (kernel/time/timer.c:2386 kernel/time/timer.c:2395 kernel/time/timer.c:2403) [ 139.988818][ C2] ? clockevents_program_event (kernel/time/clockevents.c:372) [ 139.988822][ C2] ? __run_timers (./include/trace/events/timer.h:138 (discriminator 19)) [ 139.988823][ C2] ? trace_irq_enable.constprop.0 (./include/trace/events/preemptirq.h:40 (discriminator 22)) [ 139.988825][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 139.988827][ C2] handle_softirqs (kernel/softirq.c:622) [ 139.988829][ C2] ? _local_bh_enable (kernel/softirq.c:405 (discriminator 1)) [ 139.988831][ C2] __irq_exit_rcu (kernel/softirq.c:656 kernel/softirq.c:496 kernel/softirq.c:735) [ 139.988833][ C2] irq_exit_rcu (kernel/softirq.c:752) [ 139.988835][ C2] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1062 (discriminator 37) arch/x86/kernel/apic/apic.c:1062 (discriminator 37)) [ 139.988836][ C2] [ 139.988837][ C2] [ 139.988837][ C2] ? lockdep_hardirqs_on (kernel/locking/lockdep.c:4472) [ 139.988839][ C2] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:674) [ 139.988840][ C2] RIP: 0010:pv_native_safe_halt (./arch/x86/include/asm/irqflags.h:48 arch/x86/kernel/paravirt.c:63) [ 139.988843][ C2] Code: 48 8b 3d 44 61 6e 02 e8 1f 00 00 00 48 2b 05 08 22 a7 00 c3 0f 1f 80 00 00 00 00 f3 0f 1e fa eb 07 0f 00 2d a3 dd 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 61 6e 02 mov 0x26e6144(%rip),%rdi # 0x26e614b 7: e8 1f 00 00 00 call 0x2b c: 48 2b 05 08 22 a7 00 sub 0xa72208(%rip),%rax # 0xa7221b 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 a3 dd 19 00 verw 0x19dda3(%rip) # 0x19ddcb 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 [ 139.988844][ C2] RSP: 0018:ffa0000000157e00 EFLAGS: 00000282 [ 139.988846][ C2] RAX: 000000000066cc85 RBX: ff11000001bac6c0 RCX: ffffffff838f7f27 [ 139.988848][ C2] RDX: ff11000001bac6c0 RSI: ffffffff86ac4933 RDI: ffffffff8647d760 [ 139.988848][ C2] RBP: 0000000000000000 R08: 0000000000000000 R09: 0000000000000000 [ 139.988849][ C2] R10: 0000000000000002 R11: 0000000000000001 R12: 1ff400000002afc3 [ 139.988850][ C2] R13: 0000000000000000 R14: dffffc0000000000 R15: 0000000000000000 [ 139.988852][ C2] ? cpuidle_idle_call.constprop.0 (kernel/sched/idle.c:199) [ 139.988854][ C2] default_idle (./arch/x86/include/asm/paravirt.h:62 arch/x86/kernel/process.c:768) [ 139.988856][ C2] default_idle_call (kernel/sched/idle.c:122) [ 139.988857][ C2] cpuidle_idle_call.constprop.0 (kernel/sched/idle.c:199) [ 139.988859][ C2] ? arch_cpu_idle_exit+0x40/0x40 [ 139.988861][ C2] ? mark_tsc_async_resets (arch/x86/kernel/tsc_sync.c:49) [ 139.988862][ C2] ? trace_irq_enable.constprop.0 (./include/trace/events/preemptirq.h:40 (discriminator 22)) [ 139.988864][ C2] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 139.988865][ C2] do_idle (kernel/sched/idle.c:355) [ 139.988867][ C2] cpu_startup_entry (kernel/sched/idle.c:454) [ 139.988869][ C2] start_secondary (arch/x86/kernel/smpboot.c:312) [ 139.988871][ C2] ? set_cpu_sibling_map (arch/x86/kernel/smpboot.c:733 (discriminator 4)) Finger prints: check_prev_add:validate_chain:__lock_acquire:_raw_spin_lock_bh:___neigh_create