====================================== | [986.969338][T11612] #5: ffff88800d500a50 (&devlink->lock_key#2){+.+.}-{4:4}, at: nsim_drv_remove (drivers/net/netdevsim/dev.c:1676) netdevsim | [986.969720][T11612] #6: ffffffff93fe1248 (rtnl_mutex){+.+.}-{4:4}, at: nsim_destroy (drivers/net/netdevsim/netdev.c:817) netdevsim | [ 986.970053][T11612] | [ 986.970053][T11612] stack backtrace: [ 986.970612][T11612] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 986.970845][T11612] Call Trace: [ 986.970990][T11612] [986.971086][T11612] dump_stack_lvl (lib/dump_stack.c:123) [986.971278][T11612] print_circular_bug (kernel/locking/lockdep.c:2077) [986.971467][T11612] check_noncircular (kernel/locking/lockdep.c:2206) [986.971654][T11612] ? __pfx_check_noncircular (kernel/locking/lockdep.c:2182) [986.971844][T11612] ? __kernel_text_address (kernel/extable.c:79) [986.972034][T11612] ? unwind_get_return_address (arch/x86/kernel/unwind_orc.c:369 arch/x86/kernel/unwind_orc.c:364) [986.972237][T11612] ? __pfx_stack_trace_consume_entry (kernel/stacktrace.c:83) [986.972476][T11612] ? arch_stack_walk (arch/x86/kernel/stacktrace.c:26) [986.972666][T11612] check_prev_add (kernel/locking/lockdep.c:3162) [986.972854][T11612] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [986.973042][T11612] validate_chain (kernel/locking/lockdep.c:3281 kernel/locking/lockdep.c:3904) [986.973230][T11612] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [986.973418][T11612] ? mark_lock (kernel/locking/lockdep.c:186 kernel/locking/lockdep.c:4755) [986.973609][T11612] __lock_acquire (kernel/locking/lockdep.c:5226) [986.973804][T11612] ? kasan_addr_to_slab (./arch/x86/include/asm/jump_label.h:36 ./include/linux/page-flags.h:205 ./include/linux/page-flags.h:246 ./include/linux/mm.h:1296 mm/kasan/../slab.h:211 mm/kasan/common.c:38) [986.973997][T11612] lock_acquire.part.0 (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5851) [986.974183][T11612] ? __kernfs_remove (fs/kernfs/dir.c:1492) [986.974371][T11612] ? __pfx___lock_release (kernel/locking/lockdep.c:5501) [986.974554][T11612] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5814) [986.974738][T11612] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 37)) [986.974922][T11612] ? __virt_addr_valid (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:962 ./include/linux/mmzone.h:2058 arch/x86/mm/physaddr.c:65) [986.975114][T11612] ? lock_acquire (kernel/locking/lockdep.c:5822) [986.975298][T11612] ? __kernfs_remove (fs/kernfs/dir.c:1492) [986.975593][T11612] kernfs_drain (./include/linux/instrumented.h:68 ./include/linux/atomic/atomic-instrumented.h:32 fs/kernfs/dir.c:501) [986.975885][T11612] ? __kernfs_remove (fs/kernfs/dir.c:1492) [986.976179][T11612] ? __pfx_kernfs_drain (fs/kernfs/dir.c:481) [986.976366][T11612] ? lock_acquire (kernel/locking/lockdep.c:5822) [986.976549][T11612] __kernfs_remove (fs/kernfs/dir.c:1492) [986.976747][T11612] kernfs_remove_by_name_ns (fs/kernfs/dir.c:1695) [986.976938][T11612] remove_files (fs/sysfs/group.c:27 (discriminator 3)) [986.977229][T11612] sysfs_remove_group (fs/sysfs/group.c:323) [986.977415][T11612] sysfs_remove_groups (fs/sysfs/group.c:345 fs/sysfs/group.c:338) [986.977811][T11612] device_remove_attrs (drivers/base/core.c:2937) [986.977997][T11612] ? __pfx_device_remove_attrs (drivers/base/core.c:2937) [986.978185][T11612] device_del (drivers/base/core.c:3854) [986.978324][T11612] ? __pfx_device_del (drivers/base/core.c:3809) [986.978513][T11612] unregister_netdevice_many_notify (net/core/dev.c:2527 (discriminator 3) net/core/dev.c:11565 (discriminator 3)) [986.978746][T11612] ? __mutex_trylock_common (./arch/x86/include/asm/atomic64_64.h:101 ./include/linux/atomic/atomic-arch-fallback.h:4296 ./include/linux/atomic/atomic-long.h:1482 ./include/linux/atomic/atomic-instrumented.h:4458 kernel/locking/mutex.c:104) [986.978934][T11612] ? __pfx___mutex_trylock_common (kernel/locking/mutex.c:79) [986.979161][T11612] ? __pfx_unregister_netdevice_many_notify (net/core/dev.c:11469) [986.979391][T11612] ? __mutex_lock (./arch/x86/include/asm/preempt.h:94 kernel/locking/mutex.c:595 kernel/locking/mutex.c:735) [986.979582][T11612] ? nsim_destroy (drivers/net/netdevsim/netdev.c:817) netdevsim [986.979781][T11612] ? __pfx___mutex_lock (kernel/locking/mutex.c:734) [986.979970][T11612] unregister_netdevice_queue (net/core/dev.c:11464) [986.980156][T11612] ? __pfx_do_raw_spin_lock (kernel/locking/spinlock_debug.c:114) [986.980452][T11612] ? __pfx_unregister_netdevice_queue (net/core/dev.c:11453) [986.980686][T11612] nsim_destroy (drivers/net/netdevsim/netdev.c:822 (discriminator 2)) netdevsim [986.980879][T11612] __nsim_dev_port_del (drivers/net/netdevsim/dev.c:426 drivers/net/netdevsim/dev.c:1429) netdevsim [986.981119][T11612] nsim_dev_reload_destroy (drivers/net/netdevsim/dev.c:1438 drivers/net/netdevsim/dev.c:1661) netdevsim [986.981579][T11612] nsim_drv_remove (drivers/net/netdevsim/dev.c:1678) netdevsim [986.981779][T11612] device_release_driver_internal (drivers/base/dd.c:1275 drivers/base/dd.c:1296) [986.982012][T11612] ? klist_put (lib/klist.c:220) [986.982157][T11612] bus_remove_device (./include/linux/kobject.h:193 drivers/base/base.h:73 drivers/base/bus.c:583) [986.982342][T11612] device_del (drivers/base/core.c:3855) [986.982481][T11612] ? __pfx_device_del (drivers/base/core.c:3809) [986.982665][T11612] ? lock_acquire.part.0 (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5851) [986.982852][T11612] ? kernfs_fop_write_iter (fs/kernfs/file.c:326) [986.983037][T11612] device_unregister (drivers/base/core.c:3772 drivers/base/core.c:3896) [986.983327][T11612] del_device_store (drivers/net/netdevsim/bus.c:230) netdevsim [986.983568][T11612] ? __pfx_del_device_store (drivers/net/netdevsim/bus.c:197) netdevsim [986.983808][T11612] ? __pfx_sysfs_kf_write (fs/sysfs/file.c:132) [986.984097][T11612] ? sysfs_file_ops (fs/sysfs/file.c:31 (discriminator 1)) [986.984283][T11612] ? __pfx_sysfs_kf_write (fs/sysfs/file.c:132) [986.984469][T11612] kernfs_fop_write_iter (fs/kernfs/file.c:334) [986.984655][T11612] vfs_write (fs/read_write.c:586 fs/read_write.c:679) [986.984797][T11612] ? __pfx_vfs_write (fs/read_write.c:660) [986.984980][T11612] ? __lock_release (kernel/locking/lockdep.c:5525) [986.985165][T11612] ? do_user_addr_fault (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:880 ./include/linux/mm.h:741 arch/x86/mm/fault.c:1340) [986.985359][T11612] ? __pfx___up_read (kernel/locking/rwsem.c:1337) [986.985757][T11612] ksys_write (fs/read_write.c:731) [986.985908][T11612] ? __pfx_ksys_write (fs/read_write.c:721) [986.986098][T11612] ? do_user_addr_fault (./include/linux/rcupdate.h:882 ./include/linux/mm.h:741 arch/x86/mm/fault.c:1340) [986.986286][T11612] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [986.986474][T11612] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 986.986811][T11612] RIP: 0033:0x7f1407b0eb77 [ 986.987009][T11612] Code: Unable to access opcode bytes at 0x7f1407b0eb4d. Code starting with the faulting instruction =========================================== [ 986.987252][T11612] RSP: 002b:00007ffc05944428 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 [ 986.987647][T11612] RAX: ffffffffffffffda RBX: 0000000000000005 RCX: 00007f1407b0eb77 [ 986.987920][T11612] RDX: 0000000000000005 RSI: 000055ad382adc60 RDI: 0000000000000001 [ 986.988197][T11612] RBP: 000055ad382adc60 R08: 0000000000000000 R09: 00007f1407b814e0 [ 986.988580][T11612] R10: 00007f1407b813e0 R11: 0000000000000246 R12: 0000000000000005 Finger prints: print_circular_bug:check_noncircular:check_prev_add:validate_chain:__lock_acquire