[ 10.655148][ T250] [ 10.655341][ T250] ============================================ [ 10.655550][ T250] WARNING: possible recursive locking detected [ 10.655752][ T250] 6.13.0-rc5-virtme #1 Not tainted [ 10.655914][ T250] -------------------------------------------- [ 10.656113][ T250] python3/250 is trying to acquire lock: [ 10.656278][ T250] ffffffff9bdf6a70 ((netdev_chain).rwsem){++++}-{4:4}, at: blocking_notifier_call_chain+0x50/0x90 [ 10.656619][ T250] [ 10.656619][ T250] but task is already holding lock: [ 10.656856][ T250] ffffffff9bdf6a70 ((netdev_chain).rwsem){++++}-{4:4}, at: blocking_notifier_call_chain+0x50/0x90 [ 10.657188][ T250] [ 10.657188][ T250] other info that might help us debug this: [ 10.657426][ T250] Possible unsafe locking scenario: [ 10.657426][ T250] [ 10.657666][ T250] CPU0 [ 10.657787][ T250] ---- [ 10.657906][ T250] lock((netdev_chain).rwsem); [ 10.658071][ T250] lock((netdev_chain).rwsem); [ 10.658236][ T250] [ 10.658236][ T250] *** DEADLOCK *** [ 10.658236][ T250] [ 10.658477][ T250] May be due to missing lock nesting notation [ 10.658477][ T250] [ 10.658718][ T250] 8 locks held by python3/250: [ 10.658882][ T250] #0: ffff88800a7e93f0 (sb_writers#8){.+.+}-{0:0}, at: ksys_write+0xf8/0x1d0 [ 10.659184][ T250] #1: ffff88800502e288 (&of->mutex){+.+.}-{4:4}, at: kernfs_fop_write_iter+0x20b/0x460 [ 10.659474][ T250] #2: ffff888008ed59f0 (kn->active#33){.+.+}-{0:0}, at: kernfs_fop_write_iter+0x22e/0x460 [ 10.659804][ T250] #3: ffffffffc0242628 (nsim_bus_dev_list_lock){+.+.}-{4:4}, at: new_device_store+0x12a/0x690 [netdevsim] [ 10.660187][ T250] #4: ffff88800e02d0e8 (&dev->mutex){....}-{4:4}, at: __device_attach+0x76/0x3f0 [ 10.660481][ T250] #5: ffff88800cf8d250 (&devlink->lock_key){+.+.}-{4:4}, at: nsim_drv_probe+0xb7/0x8b0 [netdevsim] [ 10.660819][ T250] #6: ffffffff9be07e88 (rtnl_mutex){+.+.}-{4:4}, at: nsim_create+0x46a/0xa60 [netdevsim] [ 10.661118][ T250] #7: ffffffff9bdf6a70 ((netdev_chain).rwsem){++++}-{4:4}, at: blocking_notifier_call_chain+0x50/0x90 [ 10.661450][ T250] [ 10.661450][ T250] stack backtrace: [ 10.661651][ T250] CPU: 3 UID: 0 PID: 250 Comm: python3 Not tainted 6.13.0-rc5-virtme #1 [ 10.661894][ T250] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011 [ 10.662096][ T250] Call Trace: [ 10.662221][ T250] [ 10.662307][ T250] dump_stack_lvl+0x82/0xd0 [ 10.662475][ T250] print_deadlock_bug+0x40a/0x650 [ 10.662643][ T250] validate_chain+0x5bf/0xae0 [ 10.662807][ T250] ? __pfx_validate_chain+0x10/0x10 [ 10.662974][ T250] ? hlock_class+0x4e/0x130 [ 10.663144][ T250] ? mark_lock+0x38/0x3e0 [ 10.663269][ T250] __lock_acquire+0xb9a/0x1680 [ 10.663433][ T250] ? udp_tunnel_nic_netdevice_event+0xd1/0x5c0 [ 10.663637][ T250] ? really_probe+0x1df/0x920 [ 10.663803][ T250] lock_acquire.part.0+0xeb/0x330 [ 10.663970][ T250] ? blocking_notifier_call_chain+0x50/0x90 [ 10.664173][ T250] ? entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 10.664375][ T250] ? find_held_lock+0x2c/0x110 [ 10.664537][ T250] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 10.664701][ T250] ? trace_lock_acquire+0x14c/0x1f0 [ 10.664865][ T250] ? lock_acquire+0x32/0xc0 [ 10.665027][ T250] ? blocking_notifier_call_chain+0x50/0x90 [ 10.665230][ T250] down_read+0x9f/0x340 [ 10.665354][ T250] ? blocking_notifier_call_chain+0x50/0x90 [ 10.665577][ T250] ? __pfx_down_read+0x10/0x10 [ 10.665741][ T250] ? notifier_call_chain+0xcd/0x150 [ 10.665905][ T250] blocking_notifier_call_chain+0x50/0x90 [ 10.666069][ T250] call_netdevice_notifiers+0x71/0xa0 [ 10.666237][ T250] ? __pfx_call_netdevice_notifiers+0x10/0x10 [ 10.666440][ T250] ? mutex_is_locked+0x1c/0x60 [ 10.666604][ T250] udp_tunnel_nic_register+0x591/0x870 [ 10.666770][ T250] udp_tunnel_nic_netdevice_event+0x11d/0x5c0 [ 10.666972][ T250] notifier_call_chain+0xcd/0x150 [ 10.667137][ T250] blocking_notifier_call_chain+0x66/0x90 [ 10.667301][ T250] register_netdevice+0xe75/0x1360 [ 10.667470][ T250] ? __pfx_register_netdevice+0x10/0x10 [ 10.667635][ T250] nsim_create+0x6c2/0xa60 [netdevsim] [ 10.667811][ T250] __nsim_dev_port_add+0x22f/0x6e0 [netdevsim] [ 10.668023][ T250] ? mark_lock+0x38/0x3e0 [ 10.668149][ T250] ? __pfx___nsim_dev_port_add+0x10/0x10 [netdevsim] [ 10.668365][ T250] ? lockdep_hardirqs_on_prepare+0x275/0x410 [ 10.668574][ T250] nsim_dev_port_add_all+0x39/0xf0 [netdevsim] [ 10.668788][ T250] nsim_drv_probe+0x61e/0x8b0 [netdevsim] [ 10.668962][ T250] ? __pfx_nsim_drv_probe+0x10/0x10 [netdevsim] [ 10.669173][ T250] ? kernfs_create_link+0x173/0x240 [ 10.669337][ T250] ? kernfs_put+0x1c/0x40 [ 10.669464][ T250] ? sysfs_do_create_link_sd+0x8c/0x100 [ 10.669631][ T250] really_probe+0x1df/0x920 [ 10.669799][ T250] __driver_probe_device+0x2e6/0x3e0 [ 10.669963][ T250] driver_probe_device+0x49/0x140 [ 10.670128][ T250] __device_attach_driver+0x192/0x2b0 [ 10.670293][ T250] ? __pfx___device_attach_driver+0x10/0x10 [ 10.670496][ T250] bus_for_each_drv+0x107/0x1a0 [ 10.670659][ T250] ? __pfx_bus_for_each_drv+0x10/0x10 [ 10.670824][ T250] ? bus_to_subsys+0xd5/0x110 [ 10.670990][ T250] ? __pfx___lock_release+0x10/0x10 [ 10.671153][ T250] ? __pfx_lock_acquire.part.0+0x10/0x10 [ 10.671317][ T250] __device_attach+0x1a3/0x3f0 [ 10.671483][ T250] ? __pfx___device_attach+0x10/0x10 [ 10.671647][ T250] ? bus_to_subsys+0xd5/0x110 [ 10.671809][ T250] ? do_raw_spin_unlock+0x58/0x220 [ 10.671973][ T250] bus_probe_device+0x133/0x180 [ 10.672142][ T250] device_add+0x99d/0x1110 [ 10.672305][ T250] ? __pfx_device_add+0x10/0x10 [ 10.672466][ T250] ? __init_waitqueue_head+0xcf/0x150 [ 10.672633][ T250] new_device_store+0x393/0x690 [netdevsim] [ 10.672850][ T250] ? __pfx_new_device_store+0x10/0x10 [netdevsim] [ 10.673076][ T250] ? __pfx_sysfs_kf_write+0x10/0x10 [ 10.673246][ T250] ? sysfs_file_ops+0x11e/0x170 [ 10.673419][ T250] ? __pfx_sysfs_kf_write+0x10/0x10 [ 10.673583][ T250] kernfs_fop_write_iter+0x2ba/0x460 [ 10.673746][ T250] vfs_write+0xa81/0x11e0 [ 10.673871][ T250] ? __pfx_vfs_write+0x10/0x10 [ 10.674036][ T250] ? __lock_release+0x103/0x460 [ 10.674201][ T250] ? do_user_addr_fault+0x972/0xe30 [ 10.674366][ T250] ? __pfx___up_read+0x10/0x10 [ 10.674536][ T250] ksys_write+0xf8/0x1d0 [ 10.674659][ T250] ? __pfx_ksys_write+0x10/0x10 [ 10.674849][ T250] ? do_user_addr_fault+0x97c/0xe30 [ 10.675014][ T250] do_syscall_64+0xc1/0x1d0 [ 10.675178][ T250] entry_SYSCALL_64_after_hwframe+0x77/0x7f [ 10.675379][ T250] RIP: 0033:0x7f285bbddb77 [ 10.675549][ T250] Code: 0b 00 f7 d8 64 89 02 48 c7 c0 ff ff ff ff eb b7 0f 1f 00 f3 0f 1e fa 64 8b 04 25 18 00 00 00 85 c0 75 10 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 51 c3 48 83 ec 28 48 89 54 24 18 48 89 74 24 [ 10.676130][ T250] RSP: 002b:00007ffd0d08dc98 EFLAGS: 00000246 ORIG_RAX: 0000000000000001 [ 10.676379][ T250] RAX: ffffffffffffffda RBX: 00007f285b9c3140 RCX: 00007f285bbddb77 [ 10.676622][ T250] RDX: 0000000000000009 RSI: 000056258c899680 RDI: 0000000000000006 [ 10.676872][ T250] RBP: 0000000000000009 R08: 0000000000000000 R09: 0000000000000000 [ 10.677116][ T250] R10: 0000000000000002 R11: 0000000000000246 R12: 00007f284da7bc40 [ 10.677359][ T250] R13: 000056258c899680 R14: 0000000000000006 R15: 000056258c690900 [ 10.677609][ T250] [ 10.739609][ T253] netdevsim netdevsim16425 eni16425np1: renamed from eth0