====================================== | [ 110.476035][ T641] #0: ffffffffad9b8650 (pernet_ops_rwsem){++++}-{3:3}, at: rtnl_link_unregister (net/core/rtnetlink.c:671 net/core/rtnetlink.c:694) | [ 110.476345][ T641] #1: ffffffffad9d3948 (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) | [ 110.476615][ T641] | [ 110.476615][ T641] stack backtrace: [ 110.477042][ T641] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.16.3-0-ga6ed6b701f0a-prebuilt.qemu.org 04/01/2014 [ 110.477392][ T641] Call Trace: [ 110.477530][ T641] [ 110.477615][ T641] dump_stack_lvl (lib/dump_stack.c:123) [ 110.477787][ T641] print_circular_bug (kernel/locking/lockdep.c:2077) [ 110.477947][ T641] check_noncircular (kernel/locking/lockdep.c:2206) [ 110.478118][ T641] ? __pfx_check_noncircular (kernel/locking/lockdep.c:2182) [ 110.478294][ T641] ? __kernel_text_address (kernel/extable.c:79) [ 110.478450][ T641] ? unwind_get_return_address (arch/x86/kernel/unwind_orc.c:369 arch/x86/kernel/unwind_orc.c:364) [ 110.478611][ T641] ? __pfx_stack_trace_consume_entry (kernel/stacktrace.c:83) [ 110.478825][ T641] ? arch_stack_walk (arch/x86/kernel/stacktrace.c:26) [ 110.478984][ T641] ? alloc_chain_hlocks (kernel/locking/lockdep.c:3528) [ 110.479154][ T641] check_prev_add (kernel/locking/lockdep.c:3162) [ 110.479307][ T641] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [ 110.479473][ T641] validate_chain (kernel/locking/lockdep.c:3281 kernel/locking/lockdep.c:3904) [ 110.479626][ T641] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [ 110.479786][ T641] ? mark_lock (kernel/locking/lockdep.c:186 kernel/locking/lockdep.c:4731) [ 110.479940][ T641] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [ 110.480114][ T641] __lock_acquire (kernel/locking/lockdep.c:5202) [ 110.480289][ T641] lock_sync (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5876) [ 110.480414][ T641] ? __synchronize_srcu (kernel/rcu/srcutree.c:1383) [ 110.480566][ T641] __synchronize_srcu (kernel/rcu/srcutree.c:1388) [ 110.480738][ T641] ? __pfx___synchronize_srcu (kernel/rcu/srcutree.c:1383) [ 110.480890][ 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) [ 110.481056][ T641] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [ 110.481172][ T641] ? kvm_clock_get_cycles (./arch/x86/include/asm/preempt.h:94 arch/x86/kernel/kvmclock.c:80 arch/x86/kernel/kvmclock.c:86) [ 110.481348][ 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) [ 110.481507][ T641] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 110.481711][ T641] __rtnl_link_unregister (net/core/rtnetlink.c:657) [ 110.481866][ T641] ? mark_lock (kernel/locking/lockdep.c:4703 (discriminator 3)) [ 110.481996][ T641] ? __pfx___rtnl_link_unregister (net/core/rtnetlink.c:652) [ 110.482193][ T641] ? mark_held_locks (kernel/locking/lockdep.c:4321) [ 110.482350][ T641] rtnl_link_unregister (net/core/rtnetlink.c:152 net/core/rtnetlink.c:696) [ 110.482516][ T641] ? __pfx_rtnl_link_unregister (net/core/rtnetlink.c:691) [ 110.482676][ T641] ? __pfx_woken_wake_function (kernel/sched/wait.c:439) [ 110.482861][ T641] nsim_module_exit (drivers/net/netdevsim/netdev.c:99) netdevsim [ 110.483037][ T641] __do_sys_delete_module (kernel/module/main.c:757) [ 110.483199][ T641] ? __pfx___do_sys_delete_module (kernel/module/main.c:702) [ 110.483397][ T641] ? __pfx_slab_free_after_rcu_debug (mm/slub.c:4609) [ 110.483587][ T641] ? __pfx_slab_free_after_rcu_debug (mm/slub.c:4609) [ 110.483795][ 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) [ 110.483962][ T641] ? __pfx_slab_free_after_rcu_debug (mm/slub.c:4609) [ 110.484150][ T641] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [ 110.484356][ T641] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [ 110.484512][ T641] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 110.484719][ T641] RIP: 0033:0x7f68e70f45ab [ 110.484893][ 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 [ 110.485473][ T641] RSP: 002b:00007fff88e840c8 EFLAGS: 00000206 ORIG_RAX: 00000000000000b0 [ 110.485705][ T641] RAX: ffffffffffffffda RBX: 00005569412f0980 RCX: 00007f68e70f45ab [ 110.485949][ T641] RDX: 0000000000000000 RSI: 0000000000000800 RDI: 00005569412f09e8 [ 110.486193][ T641] RBP: 00005569412f0980 R08: 0000000000000000 R09: 0000000000000000 [ 110.486432][ T641] R10: 00007f68e7253ac0 R11: 0000000000000206 R12: 00005569412f09e8 Finger prints: print_circular_bug:check_noncircular:check_prev_add:validate_chain:__lock_acquire