====================================== | [ 112.146148][ T641] #0: ffffffff859b8650 (pernet_ops_rwsem){++++}-{3:3}, at: rtnl_link_unregister (net/core/rtnetlink.c:671 net/core/rtnetlink.c:694) | [ 112.146397][ T641] #1: ffffffff859d3948 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_link_unregister (./include/linux/instrumented.h:68 ./include/linux/atomic/atomic-instrumented.h:32 net/core/rtnetlink.c:677 net/core/rtnetlink.c:694) | [ 112.146612][ T641] | [ 112.146612][ T641] stack backtrace: [ 112.146943][ T641] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 112.147209][ T641] Call Trace: [ 112.147327][ T641] [ 112.147392][ T641] dump_stack_lvl (lib/dump_stack.c:123) [ 112.147521][ T641] print_circular_bug (kernel/locking/lockdep.c:2077) [ 112.147647][ T641] check_noncircular (kernel/locking/lockdep.c:2206) [ 112.147771][ T641] ? __pfx_check_noncircular (kernel/locking/lockdep.c:2182) [ 112.147897][ T641] ? __kernel_text_address (kernel/extable.c:79) [ 112.148025][ T641] ? unwind_get_return_address (arch/x86/kernel/unwind_orc.c:369 arch/x86/kernel/unwind_orc.c:364) [ 112.148152][ T641] ? __pfx_stack_trace_consume_entry (kernel/stacktrace.c:83) [ 112.148310][ T641] ? arch_stack_walk (arch/x86/kernel/stacktrace.c:26) [ 112.148450][ T641] ? alloc_chain_hlocks (kernel/locking/lockdep.c:3528) [ 112.148577][ T641] check_prev_add (kernel/locking/lockdep.c:3162) [ 112.148701][ T641] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [ 112.148826][ T641] validate_chain (kernel/locking/lockdep.c:3281 kernel/locking/lockdep.c:3904) [ 112.148954][ T641] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [ 112.149078][ T641] ? mark_lock (kernel/locking/lockdep.c:186 kernel/locking/lockdep.c:4731) [ 112.149202][ T641] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [ 112.149329][ T641] __lock_acquire (kernel/locking/lockdep.c:5202) [ 112.149458][ T641] lock_sync (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5876) [ 112.149552][ T641] ? __synchronize_srcu (kernel/rcu/srcutree.c:1383) [ 112.149676][ T641] __synchronize_srcu (kernel/rcu/srcutree.c:1388) [ 112.149799][ T641] ? __pfx___synchronize_srcu (kernel/rcu/srcutree.c:1383) [ 112.149924][ 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) [ 112.150050][ T641] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [ 112.150145][ T641] ? kvm_clock_get_cycles (./arch/x86/include/asm/preempt.h:94 arch/x86/kernel/kvmclock.c:80 arch/x86/kernel/kvmclock.c:86) [ 112.150270][ 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) [ 112.150398][ T641] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 112.150557][ T641] __rtnl_link_unregister (net/core/rtnetlink.c:657) [ 112.150680][ T641] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [ 112.150783][ T641] ? __pfx___rtnl_link_unregister (net/core/rtnetlink.c:652) [ 112.150935][ T641] ? mark_held_locks (kernel/locking/lockdep.c:4321) [ 112.151061][ T641] rtnl_link_unregister (net/core/rtnetlink.c:152 net/core/rtnetlink.c:696) [ 112.151183][ T641] ? __pfx_rtnl_link_unregister (net/core/rtnetlink.c:691) [ 112.151308][ T641] ? __pfx_woken_wake_function (kernel/sched/wait.c:439) [ 112.151431][ T641] nsim_module_exit (drivers/net/netdevsim/netdev.c:99) netdevsim [ 112.151563][ T641] __do_sys_delete_module (kernel/module/main.c:757) [ 112.151684][ T641] ? __pfx___do_sys_delete_module (kernel/module/main.c:702) [ 112.151834][ T641] ? __pfx_slab_free_after_rcu_debug (mm/slub.c:4609) [ 112.152005][ T641] ? __pfx_slab_free_after_rcu_debug (mm/slub.c:4609) [ 112.152161][ 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) [ 112.152290][ T641] ? __pfx_slab_free_after_rcu_debug (mm/slub.c:4609) [ 112.152443][ T641] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 112.152601][ T641] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 112.152728][ T641] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 112.152883][ T641] RIP: 0033:0x7fa3fa4705ab [ 112.153013][ 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 [ 112.153461][ T641] RSP: 002b:00007ffe82538cd8 EFLAGS: 00000206 ORIG_RAX: 00000000000000b0 [ 112.153650][ T641] RAX: ffffffffffffffda RBX: 000055de67f69980 RCX: 00007fa3fa4705ab [ 112.153838][ T641] RDX: 0000000000000000 RSI: 0000000000000800 RDI: 000055de67f699e8 [ 112.154025][ T641] RBP: 000055de67f69980 R08: 0000000000000000 R09: 0000000000000000 [ 112.154215][ T641] R10: 00007fa3fa5cfac0 R11: 0000000000000206 R12: 000055de67f699e8 Finger prints: print_circular_bug:check_noncircular:check_prev_add:validate_chain:__lock_acquire