====================================== | [ 116.265541][ T641] #0: ffffffffbadb8890 (pernet_ops_rwsem){++++}-{3:3}, at: rtnl_link_unregister (net/core/rtnetlink.c:678 net/core/rtnetlink.c:701) | [ 116.265813][ T641] #1: ffffffffbadd4908 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_link_unregister (./include/linux/instrumented.h:68 ./include/linux/atomic/atomic-instrumented.h:32 net/core/rtnetlink.c:684 net/core/rtnetlink.c:701) | [ 116.266064][ T641] | [ 116.266064][ T641] stack backtrace: [ 116.266433][ T641] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 116.266732][ T641] Call Trace: [ 116.266847][ T641] [ 116.266918][ T641] dump_stack_lvl (lib/dump_stack.c:123) [ 116.267079][ T641] print_circular_bug (kernel/locking/lockdep.c:2077) [ 116.267212][ T641] check_noncircular (kernel/locking/lockdep.c:2206) [ 116.267342][ T641] ? __pfx_check_noncircular (kernel/locking/lockdep.c:2182) [ 116.267474][ T641] ? __kernel_text_address (kernel/extable.c:79) [ 116.267605][ T641] ? unwind_get_return_address (arch/x86/kernel/unwind_orc.c:369 arch/x86/kernel/unwind_orc.c:364) [ 116.267737][ T641] ? __pfx_stack_trace_consume_entry (kernel/stacktrace.c:83) [ 116.267896][ T641] ? arch_stack_walk (arch/x86/kernel/stacktrace.c:26) [ 116.268026][ T641] ? alloc_chain_hlocks (kernel/locking/lockdep.c:3528) [ 116.268159][ T641] check_prev_add (kernel/locking/lockdep.c:3162) [ 116.268287][ T641] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [ 116.268417][ T641] validate_chain (kernel/locking/lockdep.c:3281 kernel/locking/lockdep.c:3904) [ 116.268546][ T641] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [ 116.268673][ T641] ? mark_lock (kernel/locking/lockdep.c:186 kernel/locking/lockdep.c:4731) [ 116.268806][ T641] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [ 116.268934][ T641] __lock_acquire (kernel/locking/lockdep.c:5202) [ 116.269065][ T641] lock_sync (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5876) [ 116.269163][ T641] ? __synchronize_srcu (kernel/rcu/srcutree.c:1383) [ 116.269293][ T641] __synchronize_srcu (kernel/rcu/srcutree.c:1388) [ 116.269418][ T641] ? __pfx___synchronize_srcu (kernel/rcu/srcutree.c:1383) [ 116.269549][ T641] ? hlock_class (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 kernel/locking/lockdep.c:228) [ 116.269678][ T641] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [ 116.269778][ T641] ? kvm_clock_get_cycles (./arch/x86/include/asm/preempt.h:94 arch/x86/kernel/kvmclock.c:80 arch/x86/kernel/kvmclock.c:86) [ 116.269910][ T641] ? ktime_get_mono_fast_ns (kernel/time/timekeeping.c:195 kernel/time/timekeeping.c:395 kernel/time/timekeeping.c:449 kernel/time/timekeeping.c:489) [ 116.270042][ T641] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 116.270207][ T641] __rtnl_link_unregister (net/core/rtnetlink.c:664) [ 116.270336][ T641] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [ 116.270436][ T641] ? __pfx___rtnl_link_unregister (net/core/rtnetlink.c:659) [ 116.270615][ T641] ? mark_held_locks (kernel/locking/lockdep.c:4321) [ 116.270745][ T641] rtnl_link_unregister (net/core/rtnetlink.c:152 net/core/rtnetlink.c:703) [ 116.270879][ T641] ? __pfx_rtnl_link_unregister (net/core/rtnetlink.c:698) [ 116.271008][ T641] ? __pfx_woken_wake_function (kernel/sched/wait.c:439) [ 116.271149][ T641] nsim_module_exit (drivers/net/netdevsim/netdev.c:99) netdevsim [ 116.271291][ T641] __do_sys_delete_module (kernel/module/main.c:757) [ 116.271441][ T641] ? __pfx___do_sys_delete_module (kernel/module/main.c:702) [ 116.271602][ T641] ? __pfx_slab_free_after_rcu_debug (mm/slub.c:4609) [ 116.271794][ T641] ? __pfx_slab_free_after_rcu_debug (mm/slub.c:4609) [ 116.271959][ T641] ? trace_rcu_segcb_stats (./arch/x86/include/asm/bitops.h:227 ./arch/x86/include/asm/bitops.h:239 ./include/asm-generic/bitops/instrumented-non-atomic.h:142 ./include/linux/cpumask.h:570 ./include/linux/cpumask.h:1117 ./include/trace/events/rcu.h:537) [ 116.272088][ T641] ? __pfx_slab_free_after_rcu_debug (mm/slub.c:4609) [ 116.272268][ T641] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 116.272439][ T641] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 116.272585][ T641] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 116.272759][ T641] RIP: 0033:0x7f7ff565e5ab [ 116.272914][ T641] Code: 73 01 c3 48 8b 0d 55 98 1b 00 f7 d8 64 89 01 48 83 c8 ff c3 66 2e 0f 1f 84 00 00 00 00 00 90 f3 0f 1e fa b8 b0 00 00 00 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 25 98 1b 00 f7 d8 64 89 01 48 All code ======== 0: 73 01 jae 0x3 2: c3 ret 3: 48 8b 0d 55 98 1b 00 mov 0x1b9855(%rip),%rcx # 0x1b985f a: f7 d8 neg %eax c: 64 89 01 mov %eax,%fs:(%rcx) f: 48 83 c8 ff or $0xffffffffffffffff,%rax 13: c3 ret 14: 66 2e 0f 1f 84 00 00 cs nopw 0x0(%rax,%rax,1) 1b: 00 00 00 1e: 90 nop 1f: f3 0f 1e fa endbr64 23: b8 b0 00 00 00 mov $0xb0,%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 25 98 1b 00 mov 0x1b9825(%rip),%rcx # 0x1b985f 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 25 98 1b 00 mov 0x1b9825(%rip),%rcx # 0x1b9835 10: f7 d8 neg %eax 12: 64 89 01 mov %eax,%fs:(%rcx) 15: 48 rex.W [ 116.273385][ T641] RSP: 002b:00007ffe00c391f8 EFLAGS: 00000206 ORIG_RAX: 00000000000000b0 [ 116.273582][ T641] RAX: ffffffffffffffda RBX: 0000559ee0331980 RCX: 00007f7ff565e5ab [ 116.273801][ T641] RDX: 0000000000000000 RSI: 0000000000000800 RDI: 0000559ee03319e8 [ 116.274025][ T641] RBP: 0000559ee0331980 R08: 0000000000000000 R09: 0000000000000000 [ 116.274227][ T641] R10: 00007f7ff57bdac0 R11: 0000000000000206 R12: 0000559ee03319e8 Finger prints: print_circular_bug:check_noncircular:check_prev_add:validate_chain:__lock_acquire