====================================== | [ 4.787750] ------------[ cut here ]------------ | [ 4.787799] rcuref - imbalanced put() | [ 4.787799] WARNING: lib/rcuref.c:266 at 0x0, CPU#0: swapper/0/0 | [ 4.787855] Modules linked in: vxlan act_gact cls_flower sch_ingress [ 4.787951] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 4.787990] RIP: 0010:rcuref_put_slowpath (lib/rcuref.c:266 (discriminator 4)) [ 4.788022] 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 [ 4.788112] RSP: 0018:ff1d68b140003e78 EFLAGS: 00010296 [ 4.788143] RAX: 00000000dfffffff RBX: ff12dbcf86e40080 RCX: ff12dbcf832e3a80 [ 4.788179] RDX: 003c8ce10d435790 RSI: 00000000dfffffff RDI: ffffffff8be7e6f0 [ 4.788218] RBP: ff12dbcf86e40070 R08: ff12dbcf86dd5030 R09: 0000000080550053 [ 4.788256] R10: ff12dbcf811da000 R11: ff12dbcf86dd5030 R12: ff12dbcf86e400e8 [ 4.788299] R13: ff1d68b140003f40 R14: 0000000000000014 R15: 0000000000000000 [ 4.788344] FS: 0000000000000000(0000) GS:ff12dbd0327cc000(0000) knlGS:0000000000000000 [ 4.788390] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 4.788424] CR2: 00007f9b50337000 CR3: 0000000008409001 CR4: 0000000000771ef0 [ 4.788474] PKRU: 55555554 [ 4.788489] Call Trace: [ 4.788503] [ 4.788517] dst_release_immediate (./arch/x86/include/asm/preempt.h:95 (discriminator 1) ./include/linux/rcuref.h:174 (discriminator 1) net/core/dst.c:184 (discriminator 1)) [ 4.788550] rt_fibinfo_free_cpus.part.0 (net/ipv4/fib_semantics.c:196) [ 4.788578] fib_nh_common_release (net/ipv4/fib_semantics.c:207) [ 4.788615] free_fib_info_rcu (./include/net/nexthop.h:480 net/ipv4/fib_semantics.c:229) [ 4.788640] rcu_core (kernel/rcu/tree.c:2612 (discriminator 1) kernel/rcu/tree.c:2857 (discriminator 1)) [ 4.788665] handle_softirqs (./arch/x86/include/asm/jump_label.h:37 ./include/trace/events/irq.h:142 kernel/softirq.c:623) [ 4.788691] irq_exit_rcu (kernel/softirq.c:657 kernel/softirq.c:496 kernel/softirq.c:723 kernel/softirq.c:739) [ 4.788713] sysvec_apic_timer_interrupt (arch/x86/kernel/apic/apic.c:1056 (discriminator 47) arch/x86/kernel/apic/apic.c:1056 (discriminator 47)) [ 4.788747] [ 4.788762] [ 4.788781] asm_sysvec_apic_timer_interrupt (./arch/x86/include/asm/idtentry.h:697) [ 4.788812] RIP: 0010:pv_native_safe_halt (arch/x86/kernel/paravirt.c:82) [ 4.788839] Code: 48 8b 3d 74 3a 44 01 e8 1f 00 00 00 48 2b 05 28 a1 60 00 c3 0f 1f 80 00 00 00 00 f3 0f 1e fa eb 07 0f 00 2d a5 b8 21 00 fb f4 0f 1f 40 d6 8b 17 89 d6 83 e6 fe 0f 01 f9 66 90 48 c1 e2 20 48 All code ======== 0: 48 8b 3d 74 3a 44 01 mov 0x1443a74(%rip),%rdi # 0x1443a7b 7: e8 1f 00 00 00 call 0x2b c: 48 2b 05 28 a1 60 00 sub 0x60a128(%rip),%rax # 0x60a13b 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 a5 b8 21 00 verw 0x21b8a5(%rip) # 0x21b8cd 28: fb sti 29: f4 hlt 2a:* c3 ret <-- trapping instruction 2b: 0f 1f 40 d6 nopl -0x2a(%rax) 2f: 8b 17 mov (%rdi),%edx 31: 89 d6 mov %edx,%esi 33: 83 e6 fe and $0xfffffffe,%esi 36: 0f 01 f9 rdtscp 39: 66 90 xchg %ax,%ax 3b: 48 c1 e2 20 shl $0x20,%rdx 3f: 48 rex.W Code starting with the faulting instruction =========================================== 0: c3 ret 1: 0f 1f 40 d6 nopl -0x2a(%rax) 5: 8b 17 mov (%rdi),%edx 7: 89 d6 mov %edx,%esi 9: 83 e6 fe and $0xfffffffe,%esi c: 0f 01 f9 rdtscp f: 66 90 xchg %ax,%ax 11: 48 c1 e2 20 shl $0x20,%rdx 15: 48 rex.W [ 4.788929] RSP: 0018:ffffffff8bc03e80 EFLAGS: 00000206 [ 4.788955] RAX: ff12dbd0327cc000 RBX: ffffffff8bc11980 RCX: 0000000000000000 [ 4.789001] RDX: 4000000000000000 RSI: 0000000000000000 RDI: 00000000000640a4 [ 4.789049] RBP: 0000000000000000 R08: 00000000000640a4 R09: ff12dbcfbec24990 [ 4.789089] R10: 0000000000000000 R11: 0000000000000000 R12: 0000000000000000 [ 4.789131] R13: 0000000000000000 R14: ffffffff8bc11098 R15: 0000000000014770 [ 4.789173] default_idle (./arch/x86/include/asm/paravirt.h:107 arch/x86/kernel/process.c:767) [ 4.789196] default_idle_call (./include/linux/cpuidle.h:144 kernel/sched/idle.c:123) [ 4.789215] do_idle (kernel/sched/idle.c:192 kernel/sched/idle.c:332) [ 4.789236] cpu_startup_entry (kernel/sched/idle.c:429) [ 4.789263] rest_init (init/main.c:757) [ 4.789285] start_kernel (init/main.c:1111) [ 4.789310] x86_64_start_reservations (arch/x86/kernel/head64.c:310) [ 4.789341] x86_64_start_kernel (??:?) Finger prints: rcuref_put_slowpath:dst_release_immediate:fib_nh_common_release:free_fib_info_rcu:rcu_core