====================================== | [ 262.195219][ C0] #5: ffffffff8b7a1cc0 (rcu_read_lock){....}-{1:3}, at: ip_output (./include/linux/rcupdate.h:300 (discriminator 2) ./include/linux/rcupdate.h:840 (discriminator 2) net/ipv4/ip_output.c:432 (discriminator 2)) | [ 262.195391][ C0] #6: ffffffff8b7a1cc0 (rcu_read_lock){....}-{1:3}, at: ip_finish_output2 (./include/linux/rcupdate.h:300 (discriminator 2) ./include/linux/rcupdate.h:840 (discriminator 2) net/ipv4/ip_output.c:229 (discriminator 2)) | [ 262.195566][ C0] | [ 262.195566][ C0] stack backtrace: [ 262.195695][ C0] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 262.195697][ C0] Call Trace: [ 262.195698][ C0] [ 262.195700][ C0] dump_stack_lvl (lib/dump_stack.c:94 lib/dump_stack.c:120) [ 262.195703][ C0] print_circular_bug.cold (kernel/locking/lockdep.c:2043) [ 262.195706][ C0] check_noncircular (kernel/locking/lockdep.c:2175) [ 262.195709][ C0] check_prev_add (kernel/locking/lockdep.c:3165) [ 262.195710][ C0] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 262.195712][ C0] validate_chain (kernel/locking/lockdep.c:3284 kernel/locking/lockdep.c:3908) [ 262.195714][ C0] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 262.195716][ C0] __lock_acquire (kernel/locking/lockdep.c:5237) [ 262.195719][ C0] lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 262.195721][ C0] ? ___neigh_create (./include/linux/spinlock.h:348 net/core/neighbour.c:670) [ 262.195722][ C0] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 262.195724][ C0] ? lock_acquire (./include/trace/events/lock.h:23 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22)) [ 262.195726][ C0] _raw_spin_lock_bh (./include/linux/spinlock_api_smp.h:150 (discriminator 1) kernel/locking/spinlock.c:182 (discriminator 1)) [ 262.195728][ C0] ? ___neigh_create (./include/linux/spinlock.h:348 net/core/neighbour.c:670) [ 262.195729][ C0] ___neigh_create (./include/linux/spinlock.h:348 net/core/neighbour.c:670) [ 262.195730][ C0] ? __rcu_read_lock (kernel/rcu/tree_plugin.h:413) [ 262.195732][ C0] ip_finish_output2 (./include/net/route.h:411 ./include/net/route.h:425 net/ipv4/ip_output.c:230) [ 262.195734][ C0] ? ip_dst_mtu_maybe_forward (./include/linux/rcupdate.h:873 ./include/net/ip.h:504) [ 262.195736][ C0] ? ip_fragment.constprop.0 (net/ipv4/ip_output.c:587 (discriminator 41)) [ 262.195737][ C0] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 262.195739][ C0] ip_output (./include/linux/netfilter.h:314 net/ipv4/ip_output.c:437) [ 262.195741][ C0] ? ip_finish_output (./include/linux/cgroup.h:868) [ 262.195743][ C0] ? __ip_make_skb (net/ipv4/ip_output.c:1386 net/ipv4/ip_output.c:1497) [ 262.195745][ C0] ip_push_pending_frames (./include/net/dst.h:470 (discriminator 4) net/ipv4/ip_output.c:131 (discriminator 4) net/ipv4/ip_output.c:1506 (discriminator 4) net/ipv4/ip_output.c:1526 (discriminator 4)) [ 262.195747][ C0] __icmp_send (net/ipv4/icmp.c:1015) [ 262.195750][ C0] ? icmpv4_global_allow (net/ipv4/icmp.c:303 (discriminator 42)) [ 262.195751][ C0] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 262.195753][ C0] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 262.195755][ C0] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 262.195756][ C0] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 262.195758][ C0] ? unwind_next_frame (./include/linux/rcupdate.h:873 ./include/linux/rcupdate.h:1183 arch/x86/kernel/unwind_orc.c:495) [ 262.195761][ C0] ? stack_access_ok (./arch/x86/include/asm/stacktrace.h:55) [ 262.195763][ C0] ? arch_stack_walk (arch/x86/kernel/stacktrace.c:25) [ 262.195765][ C0] ipv4_send_dest_unreach (net/ipv4/route.c:1282) [ 262.195767][ C0] ? ip_do_redirect (net/ipv4/route.c:864) [ 262.195769][ C0] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 262.195770][ C0] ipv4_link_failure (net/ipv4/route.c:1289) [ 262.195772][ C0] arp_error_report (./include/net/dst.h:438 net/ipv4/arp.c:299) [ 262.195774][ C0] neigh_invalidate (net/core/neighbour.c:1057) [ 262.195776][ C0] ? neigh_periodic_work (net/core/neighbour.c:973 (discriminator 3)) [ 262.195777][ C0] neigh_timer_handler (net/core/neighbour.c:1149) [ 262.195779][ C0] ? neigh_periodic_work (net/core/neighbour.c:973 (discriminator 3)) [ 262.195780][ C0] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 262.195781][ C0] call_timer_fn (kernel/time/timer.c:1748) [ 262.195783][ C0] ? detach_if_pending (./include/linux/list.h:1143) [ 262.195785][ C0] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 262.195786][ C0] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 262.195788][ C0] ? mark_held_locks (kernel/locking/lockdep.c:4325) [ 262.195790][ C0] __run_timers (kernel/time/timer.c:1799 kernel/time/timer.c:2374) [ 262.195792][ C0] ? neigh_periodic_work (net/core/neighbour.c:973 (discriminator 3)) [ 262.195794][ C0] ? __bpf_trace_itimer_expire (./include/trace/events/timer.h:407) [ 262.195795][ C0] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 262.195798][ C0] ? __rwlock_init (kernel/locking/spinlock_debug.c:48) [ 262.195801][ C0] run_timer_softirq (kernel/time/timer.c:2386 kernel/time/timer.c:2395 kernel/time/timer.c:2403) [ 262.195803][ C0] ? clockevents_program_event (kernel/time/clockevents.c:372) [ 262.195806][ C0] ? __run_timers (./include/trace/events/timer.h:138 (discriminator 19)) [ 262.195807][ C0] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 262.195809][ C0] handle_softirqs (kernel/softirq.c:622) [ 262.195811][ C0] ? _local_bh_enable (kernel/softirq.c:405 (discriminator 1)) [ 262.195813][ C0] __irq_exit_rcu (kernel/softirq.c:656 kernel/softirq.c:496 kernel/softirq.c:735) [ 262.195815][ C0] irq_exit_rcu (kernel/softirq.c:752) [ 262.195816][ C0] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1062 (discriminator 37) arch/x86/kernel/apic/apic.c:1062 (discriminator 37)) [ 262.195818][ C0] [ 262.195819][ C0] [ 262.195819][ C0] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 262.195821][ C0] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:674) [ 262.195822][ C0] RIP: 0010:lock_acquire.part.0 (./arch/x86/include/asm/irqflags.h:158 (discriminator 1) kernel/locking/lockdep.c:5871 (discriminator 1)) [ 262.195825][ C0] Code: ff 65 0f c1 05 d7 c4 3d 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 a9 7f 3d 04 0f 85 43 01 00 00 48 83 c4 All code ======== 0: ff 65 0f jmp *0xf(%rbp) 3: c1 05 d7 c4 3d 04 83 roll $0x83,0x43dc4d7(%rip) # 0x43dc4e1 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 a9 7f 3d sub %gs:0x43d7fa9(%rip),%rax # 0x43d7fe0 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 a9 7f 3d sub %gs:0x43d7fa9(%rip),%rax # 0x43d7fb6 c: 04 d: 0f 85 43 01 00 00 jne 0x156 13: 48 rex.W 14: 83 .byte 0x83 15: c4 .byte 0xc4 [ 262.195826][ C0] RSP: 0018:ffa000000154f860 EFLAGS: 00000206 [ 262.195828][ C0] RAX: 0000000000000046 RBX: 0000000000000000 RCX: ed72e93d1b33bbef [ 262.195830][ C0] RDX: 0000000000000001 RSI: ffffffff8b21f5fd RDI: ffffffff8ac7a8e0 [ 262.195830][ C0] RBP: 0000000000000000 R08: 0000000000000001 R09: ff1100001e638b68 [ 262.195831][ C0] R10: 0000000000000200 R11: 0000000000000001 R12: ffffffff8b7a1cc0 [ 262.195832][ C0] R13: 0000000000000000 R14: 0000000000000000 R15: 0000000000000002 [ 262.195834][ C0] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 262.195835][ C0] ? lock_acquire (./include/trace/events/lock.h:23 (discriminator 22) kernel/locking/lockdep.c:5831 (discriminator 22)) [ 262.195838][ C0] __is_insn_slot_addr (./include/linux/rcupdate.h:300 (discriminator 2) ./include/linux/rcupdate.h:840 (discriminator 2) kernel/kprobes.c:305 (discriminator 2)) [ 262.195839][ C0] ? __is_insn_slot_addr (./include/linux/rcupdate.h:300 (discriminator 2) ./include/linux/rcupdate.h:840 (discriminator 2) kernel/kprobes.c:305 (discriminator 2)) [ 262.195841][ C0] kernel_text_address (./include/linux/kprobes.h:359 kernel/extable.c:123 kernel/extable.c:94) [ 262.195842][ C0] __kernel_text_address (kernel/extable.c:79) [ 262.195844][ C0] ? write_profile (profile.c:?) [ 262.195845][ C0] unwind_get_return_address (arch/x86/kernel/unwind_orc.c:385 arch/x86/kernel/unwind_orc.c:380) [ 262.195847][ C0] arch_stack_walk (arch/x86/kernel/stacktrace.c:26) [ 262.195849][ C0] stack_trace_save (kernel/stacktrace.c:122 (discriminator 1)) [ 262.195851][ C0] ? filter_irq_stacks (kernel/stacktrace.c:402) [ 262.195853][ C0] ? rcu_is_watching (./include/linux/context_tracking.h:128 (discriminator 3) kernel/rcu/tree.c:752 (discriminator 3)) [ 262.195854][ C0] set_track_prepare (mm/slub.c:1051) [ 262.195855][ C0] ? kmem_cache_alloc_noprof (./include/linux/kmemleak.h:44 mm/slub.c:4597 mm/slub.c:4917 mm/slub.c:4931) [ 262.195856][ C0] ? do_getname_kernel.isra.0 (fs/namei.c:147 (discriminator 11) fs/namei.c:266 (discriminator 11)) [ 262.195858][ C0] ? open_exec (./include/linux/fs.h:2565 fs/exec.c:820) [ 262.195859][ C0] ? load_elf_binary (fs/binfmt_elf.c:907) [ 262.195860][ C0] ? exec_binprm (fs/exec.c:1694 fs/exec.c:1726) [ 262.195861][ C0] ? bprm_execve (fs/exec.c:1778 fs/exec.c:1754) [ 262.195863][ C0] ? do_execveat_common.isra.0 (fs/exec.c:1876) [ 262.195864][ C0] ? __x64_sys_execve (fs/exec.c:1949 (discriminator 2) fs/exec.c:1943 (discriminator 2) fs/exec.c:1943 (discriminator 2)) [ 262.195865][ C0] ? do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) [ 262.195866][ C0] ? entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121) [ 262.195868][ C0] __alloc_object (mm/kmemleak.c:712) [ 262.195869][ C0] __create_object (mm/kmemleak.c:790) [ 262.195871][ C0] ? kasan_save_track (mm/kasan/common.c:78) [ 262.195873][ C0] kmem_cache_alloc_noprof (./include/linux/kmemleak.h:44 mm/slub.c:4597 mm/slub.c:4917 mm/slub.c:4931) [ 262.195874][ C0] ? do_getname_kernel.isra.0 (fs/namei.c:147 (discriminator 11) fs/namei.c:266 (discriminator 11)) [ 262.195876][ C0] do_getname_kernel.isra.0 (fs/namei.c:147 (discriminator 11) fs/namei.c:266 (discriminator 11)) [ 262.195878][ C0] open_exec (./include/linux/fs.h:2565 fs/exec.c:820) [ 262.195880][ C0] load_elf_binary (fs/binfmt_elf.c:907) [ 262.195882][ C0] ? __lock_acquire (kernel/locking/lockdep.c:5237) [ 262.195884][ C0] ? lock_acquire.part.0 (kernel/locking/lockdep.c:5868 (discriminator 1)) [ 262.195885][ C0] ? find_held_lock (kernel/locking/lockdep.c:5350) [ 262.195887][ C0] ? load_elf_interp.isra.0 (fs/binfmt_elf.c:693 (discriminator 4)) [ 262.195888][ C0] ? __lock_release.isra.0 (kernel/locking/lockdep.c:5535) [ 262.195890][ C0] ? exec_binprm (fs/exec.c:1692 fs/exec.c:1726) [ 262.195892][ C0] exec_binprm (fs/exec.c:1694 fs/exec.c:1726) [ 262.195894][ C0] ? check_unsafe_exec (fs/exec.c:1552) [ 262.195896][ C0] bprm_execve (fs/exec.c:1778 fs/exec.c:1754) [ 262.195897][ C0] do_execveat_common.isra.0 (fs/exec.c:1876) [ 262.195900][ C0] __x64_sys_execve (fs/exec.c:1949 (discriminator 2) fs/exec.c:1943 (discriminator 2) fs/exec.c:1943 (discriminator 2)) [ 262.195901][ C0] do_syscall_64 (arch/x86/entry/syscall_64.c:63 arch/x86/entry/syscall_64.c:94) [ 262.195902][ C0] ? trace_hardirqs_off (kernel/trace/trace_preemptirq.c:104 (discriminator 1)) [ 262.195904][ C0] ? exc_page_fault (arch/x86/mm/fault.c:1489 (discriminator 3) arch/x86/mm/fault.c:1536 (discriminator 3)) [ 262.195906][ C0] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:121) [ 262.195907][ C0] RIP: 0033:0x7f8a1caa7f4b [ 262.195910][ C0] Code: 0f 1e fa 48 8b 05 75 e0 12 00 48 8b 10 e9 0d 00 00 00 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 00 f3 0f 1e fa b8 3b 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 7d de 12 00 f7 d8 64 89 01 48 All code ======== 0: 0f 1e fa nop %edx 3: 48 8b 05 75 e0 12 00 mov 0x12e075(%rip),%rax # 0x12e07f a: 48 8b 10 mov (%rax),%rdx d: e9 0d 00 00 00 jmp 0x1f 12: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1) 19: 00 00 00 1c: 0f 1f 00 nopl (%rax) 1f: f3 0f 1e fa endbr64 23: b8 3b 00 00 00 mov $0x3b,%eax 28: 0f 05 syscall 2a:* 48 3d 01 f0 ff ff cmp $0xfffffffffffff001,%rax <-- trapping instruction 30: 73 01 jae 0x33 32: c3 ret 33: 48 8b 0d 7d de 12 00 mov 0x12de7d(%rip),%rcx # 0x12deb7 3a: f7 d8 neg %eax 3c: 64 89 01 mov %eax,%fs:(%rcx) 3f: 48 rex.W Code starting with the faulting instruction =========================================== 0: 48 3d 01 f0 ff ff cmp $0xfffffffffffff001,%rax 6: 73 01 jae 0x9 8: c3 ret 9: 48 8b 0d 7d de 12 00 mov 0x12de7d(%rip),%rcx # 0x12de8d 10: f7 d8 neg %eax 12: 64 89 01 mov %eax,%fs:(%rcx) 15: 48 rex.W [ 262.195911][ C0] RSP: 002b:00007ffc7dce9408 EFLAGS: 00000202 ORIG_RAX: 000000000000003b [ 262.195912][ C0] RAX: ffffffffffffffda RBX: 0000558dda3ff210 RCX: 00007f8a1caa7f4b [ 262.195913][ C0] RDX: 0000558dda5e3d20 RSI: 0000558dda5fac90 RDI: 0000558dda3ff210 [ 262.195914][ C0] RBP: 00007ffc7dce94f0 R08: 00007ffc7dce9330 R09: 0000000000000000 [ 262.195915][ C0] R10: 0000000000000008 R11: 0000000000000202 R12: 0000558dda3ff210 Finger prints: check_prev_add:validate_chain:__lock_acquire:_raw_spin_lock_bh:___neigh_create