====================================== | [915.061818][T10906] #2: ffff88800eab5250 (&devlink->lock_key){+.+.}-{4:4}, at: devlink_get_from_attrs_lock (net/devlink/devl_internal.h:101 net/devlink/netlink.c:199) | [915.062167][T10906] #3: ffffffffa1be1208 (rtnl_mutex){+.+.}-{4:4}, at: nsim_destroy (drivers/net/netdevsim/netdev.c:817) netdevsim | [ 915.062489][T10906] | [ 915.062489][T10906] stack backtrace: [ 915.062973][T10906] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 915.063196][T10906] Call Trace: [ 915.063331][T10906] [915.063423][T10906] dump_stack_lvl (lib/dump_stack.c:123) [915.063603][T10906] print_circular_bug (kernel/locking/lockdep.c:2077) [915.063778][T10906] check_noncircular (kernel/locking/lockdep.c:2206) [915.063954][T10906] ? __pfx_check_noncircular (kernel/locking/lockdep.c:2182) [915.064138][T10906] ? __kernel_text_address (kernel/extable.c:79) [915.064316][T10906] ? unwind_get_return_address (arch/x86/kernel/unwind_orc.c:369 arch/x86/kernel/unwind_orc.c:364) [915.064493][T10906] ? __pfx_stack_trace_consume_entry (kernel/stacktrace.c:83) [915.064712][T10906] ? arch_stack_walk (arch/x86/kernel/stacktrace.c:26) [915.064890][T10906] ? alloc_chain_hlocks (kernel/locking/lockdep.c:3528) [915.065064][T10906] check_prev_add (kernel/locking/lockdep.c:3162) [915.065244][T10906] ? __pfx_stack_trace_save (kernel/stacktrace.c:114) [915.065421][T10906] validate_chain (kernel/locking/lockdep.c:3281 kernel/locking/lockdep.c:3904) [915.065597][T10906] ? __pfx_validate_chain (kernel/locking/lockdep.c:3860) [915.065772][T10906] ? mark_lock (kernel/locking/lockdep.c:186 kernel/locking/lockdep.c:4755) [915.065948][T10906] __lock_acquire (kernel/locking/lockdep.c:5226) [915.066123][T10906] ? 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) [915.066308][T10906] lock_acquire.part.0 (kernel/locking/lockdep.c:467 kernel/locking/lockdep.c:5851) [915.066481][T10906] ? __kernfs_remove (fs/kernfs/dir.c:1492) [915.066665][T10906] ? __pfx___lock_release (kernel/locking/lockdep.c:5501) [915.066847][T10906] ? __pfx_lock_acquire.part.0 (kernel/locking/lockdep.c:5814) [915.067021][T10906] ? trace_lock_acquire (./include/trace/events/lock.h:24 (discriminator 37)) [915.067196][T10906] ? __virt_addr_valid (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:962 ./include/linux/mmzone.h:2058 arch/x86/mm/physaddr.c:65) [915.067373][T10906] ? lock_acquire (kernel/locking/lockdep.c:5822) [915.067546][T10906] ? __kernfs_remove (fs/kernfs/dir.c:1492) [915.067726][T10906] kernfs_drain (./include/linux/instrumented.h:68 ./include/linux/atomic/atomic-instrumented.h:32 fs/kernfs/dir.c:501) [915.067906][T10906] ? __kernfs_remove (fs/kernfs/dir.c:1492) [915.068084][T10906] ? __pfx_kernfs_drain (fs/kernfs/dir.c:481) [915.068265][T10906] ? lock_acquire (kernel/locking/lockdep.c:5822) [915.068443][T10906] __kernfs_remove (fs/kernfs/dir.c:1492) [915.068621][T10906] kernfs_remove_by_name_ns (fs/kernfs/dir.c:1695) [915.068796][T10906] remove_files (fs/sysfs/group.c:27 (discriminator 3)) [915.068982][T10906] sysfs_remove_group (fs/sysfs/group.c:323) [915.069159][T10906] sysfs_remove_groups (fs/sysfs/group.c:345 fs/sysfs/group.c:338) [915.069340][T10906] device_remove_attrs (drivers/base/core.c:2937) [915.069517][T10906] ? __pfx_device_remove_attrs (drivers/base/core.c:2937) [915.069694][T10906] device_del (drivers/base/core.c:3854) [915.069827][T10906] ? __pfx_device_del (drivers/base/core.c:3809) [915.070003][T10906] unregister_netdevice_many_notify (net/core/dev.c:2527 (discriminator 3) net/core/dev.c:11568 (discriminator 3)) [915.070229][T10906] ? __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) [915.070410][T10906] ? __pfx___mutex_trylock_common (kernel/locking/mutex.c:79) [915.070632][T10906] ? __pfx_unregister_netdevice_many_notify (net/core/dev.c:11472) [915.070853][T10906] ? __mutex_lock (./arch/x86/include/asm/preempt.h:94 kernel/locking/mutex.c:595 kernel/locking/mutex.c:735) [915.071028][T10906] ? nsim_destroy (drivers/net/netdevsim/netdev.c:817) netdevsim [915.071214][T10906] ? __pfx___mutex_lock (kernel/locking/mutex.c:734) [915.071387][T10906] unregister_netdevice_queue (net/core/dev.c:11467) [915.071564][T10906] ? __pfx_do_raw_spin_lock (kernel/locking/spinlock_debug.c:114) [915.071745][T10906] ? __pfx_unregister_netdevice_queue (net/core/dev.c:11456) [915.071962][T10906] nsim_destroy (drivers/net/netdevsim/netdev.c:822 (discriminator 2)) netdevsim [915.072156][T10906] __nsim_dev_port_del (drivers/net/netdevsim/dev.c:426 drivers/net/netdevsim/dev.c:1429) netdevsim [915.072383][T10906] nsim_dev_reload_destroy (drivers/net/netdevsim/dev.c:1438 drivers/net/netdevsim/dev.c:1661) netdevsim [915.072611][T10906] nsim_dev_reload_down (drivers/net/netdevsim/dev.c:969) netdevsim [915.072836][T10906] devlink_reload (net/devlink/dev.c:461) [915.073014][T10906] ? __pfx_devlink_reload (net/devlink/dev.c:446) [915.073196][T10906] ? devlink_resources_validate (net/devlink/resource.c:311) [915.073418][T10906] devlink_nl_reload_doit (net/devlink/dev.c:584) [915.073593][T10906] ? __pfx_devlink_nl_reload_doit (net/devlink/dev.c:520) [915.073811][T10906] ? __nla_parse (lib/nlattr.c:732) [915.073993][T10906] genl_family_rcv_msg_doit (net/netlink/genetlink.c:1115) [915.074170][T10906] ? __pfx_genl_family_rcv_msg_doit (net/netlink/genetlink.c:1088) [915.074399][T10906] ? validate_chain (kernel/locking/lockdep.c:3797 kernel/locking/lockdep.c:3817 kernel/locking/lockdep.c:3872) [915.074576][T10906] ? rcu_read_lock_any_held (kernel/rcu/update.c:386 kernel/rcu/update.c:380) [915.074751][T10906] ? validate_chain (kernel/locking/lockdep.c:3797 kernel/locking/lockdep.c:3817 kernel/locking/lockdep.c:3872) [915.074930][T10906] genl_family_rcv_msg (net/netlink/genetlink.c:1195) [915.075104][T10906] ? __pfx_genl_family_rcv_msg (net/netlink/genetlink.c:1160) [915.075280][T10906] ? __pfx_devlink_nl_pre_doit_dev_lock (net/devlink/netlink.c:257) [915.075497][T10906] ? __pfx_devlink_nl_reload_doit (net/devlink/dev.c:520) [915.075717][T10906] ? __pfx_devlink_nl_post_doit_dev_lock (net/devlink/netlink.c:288) [915.075937][T10906] genl_rcv_msg (net/netlink/genetlink.c:65 net/netlink/genetlink.c:1211) [915.076113][T10906] netlink_rcv_skb (net/netlink/af_netlink.c:2543) [915.076289][T10906] ? __pfx_genl_rcv_msg (net/netlink/genetlink.c:1201) [915.076463][T10906] ? __pfx_netlink_rcv_skb (net/netlink/af_netlink.c:2520) [915.076641][T10906] ? genl_rcv (net/netlink/genetlink.c:1219) [915.076775][T10906] ? __pfx_down_read (kernel/locking/rwsem.c:1522) [915.076954][T10906] ? netlink_deliver_tap (./include/linux/rcupdate.h:347 ./include/linux/rcupdate.h:880 net/netlink/af_netlink.c:340) [915.077129][T10906] genl_rcv (net/netlink/genetlink.c:1220) [915.077259][T10906] netlink_unicast (net/netlink/af_netlink.c:1322 net/netlink/af_netlink.c:1348) [915.077437][T10906] ? __pfx_netlink_unicast (net/netlink/af_netlink.c:1333) [915.077614][T10906] ? find_held_lock (kernel/locking/lockdep.c:5339) [915.077790][T10906] netlink_sendmsg (net/netlink/af_netlink.c:1892) [915.077966][T10906] ? __pfx_netlink_sendmsg (net/netlink/af_netlink.c:1811) [915.078142][T10906] ? lock_acquire (kernel/locking/lockdep.c:5822) [915.078331][T10906] ? __might_fault (mm/memory.c:6751 mm/memory.c:6744) [915.078510][T10906] __sys_sendto (net/socket.c:711 net/socket.c:726 net/socket.c:2272) [915.078684][T10906] ? __pfx___sys_sendto (net/socket.c:2239) [915.078863][T10906] ? __lock_release (kernel/locking/lockdep.c:5525) [915.079046][T10906] ? 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) [915.079222][T10906] ? __pfx___lock_release (kernel/locking/lockdep.c:5501) [915.079398][T10906] ? __pfx___up_read (kernel/locking/rwsem.c:1337) [915.079581][T10906] ? 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) [915.079770][T10906] ? do_user_addr_fault (./include/linux/rcupdate.h:882 ./include/linux/mm.h:741 arch/x86/mm/fault.c:1340) [915.079963][T10906] __x64_sys_sendto (net/socket.c:2275) [915.080158][T10906] ? lockdep_hardirqs_on_prepare (kernel/locking/lockdep.c:4347 kernel/locking/lockdep.c:4406) [915.080402][T10906] do_syscall_64 (arch/x86/entry/common.c:52 arch/x86/entry/common.c:83) [915.080582][T10906] entry_SYSCALL_64_after_hwframe (arch/x86/entry/entry_64.S:130) [ 915.080821][T10906] RIP: 0033:0x7fe520ecda4a [ 915.081030][T10906] Code: d8 64 89 02 48 c7 c0 ff ff ff ff eb b8 0f 1f 00 f3 0f 1e fa 41 89 ca 64 8b 04 25 18 00 00 00 85 c0 75 15 b8 2c 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 7e c3 0f 1f 44 00 00 41 54 48 83 ec 30 44 89 All code ======== 0: d8 64 89 02 fsubs 0x2(%rcx,%rcx,4) 4: 48 c7 c0 ff ff ff ff mov $0xffffffffffffffff,%rax b: eb b8 jmp 0xffffffffffffffc5 d: 0f 1f 00 nopl (%rax) 10: f3 0f 1e fa endbr64 14: 41 89 ca mov %ecx,%r10d 17: 64 8b 04 25 18 00 00 mov %fs:0x18,%eax 1e: 00 1f: 85 c0 test %eax,%eax 21: 75 15 jne 0x38 23: b8 2c 00 00 00 mov $0x2c,%eax 28: 0f 05 syscall 2a:* 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax <-- trapping instruction 30: 77 7e ja 0xb0 32: c3 ret 33: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) 38: 41 54 push %r12 3a: 48 83 ec 30 sub $0x30,%rsp 3e: 44 rex.R 3f: 89 .byte 0x89 Code starting with the faulting instruction =========================================== 0: 48 3d 00 f0 ff ff cmp $0xfffffffffffff000,%rax 6: 77 7e ja 0x86 8: c3 ret 9: 0f 1f 44 00 00 nopl 0x0(%rax,%rax,1) e: 41 54 push %r12 10: 48 83 ec 30 sub $0x30,%rsp 14: 44 rex.R 15: 89 .byte 0x89 [ 915.081696][T10906] RSP: 002b:00007ffe63c25c98 EFLAGS: 00000246 ORIG_RAX: 000000000000002c [ 915.081981][T10906] RAX: ffffffffffffffda RBX: 000000003cbc8b00 RCX: 00007fe520ecda4a [ 915.082274][T10906] RDX: 0000000000000034 RSI: 000000003cbc8b00 RDI: 0000000000000005 [ 915.082562][T10906] RBP: 000000003cbc8910 R08: 00007fe521071200 R09: 000000000000000c [ 915.082846][T10906] R10: 0000000000000000 R11: 0000000000000246 R12: 000000000040f200 Finger prints: print_circular_bug:check_noncircular:check_prev_add:validate_chain:__lock_acquire