possible deadlock in ieee80211_remove_interfaces
======================================================
WARNING: possible circular locking dependency detected
6.13.0-syzkaller-04046-g0ad9617c78ac #0 Not tainted
------------------------------------------------------
kworker/u8:5/990 is trying to acquire lock:
ffffffff8fcc5a88 (rtnl_mutex){+.+.}-{4:4}, at: rtnl_acquire_if_cleanup_net net/core/dev.c:10272 [inline]
ffffffff8fcc5a88 (rtnl_mutex){+.+.}-{4:4}, at: unregister_netdevice_many_notify+0xac2/0x2030 net/core/dev.c:11792
but task is already holding lock:
ffff888025150768 (&rdev->wiphy.mtx){+.+.}-{4:4}, at: class_wiphy_constructor include/net/cfg80211.h:6061 [inline]
ffff888025150768 (&rdev->wiphy.mtx){+.+.}-{4:4}, at: ieee80211_remove_interfaces+0x129/0x700 net/mac80211/iface.c:2280
which lock already depends on the new lock.
the existing dependency chain (in reverse order) is:
-> #1 (
&rdev->wiphy.mtx){+.+.}-{4:4}:
lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5851
__mutex_lock_common kernel/locking/mutex.c:585 [inline]
__mutex_lock+0x19c/0x1010 kernel/locking/mutex.c:730
wiphy_lock include/net/cfg80211.h:6046 [inline]
wiphy_register+0x1a49/0x27b0 net/wireless/core.c:1006
ieee80211_register_hw+0x354e/0x4240 net/mac80211/main.c:1587
mac80211_hwsim_new_radio+0x2a9f/0x4a90 drivers/net/wireless/virtual/mac80211_hwsim.c:5558
init_mac80211_hwsim+0x87a/0xb00 drivers/net/wireless/virtual/mac80211_hwsim.c:6910
do_one_initcall+0x248/0x870 init/main.c:1267
do_initcall_level+0x157/0x210 init/main.c:1329
do_initcalls+0x3f/0x80 init/main.c:1345
kernel_init_freeable+0x435/0x5d0 init/main.c:1578
kernel_init+0x1d/0x2b0 init/main.c:1467
ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:148
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
-> #0 (rtnl_mutex){+.+.}-{4:4}:
check_prev_add kernel/locking/lockdep.c:3163 [inline]
check_prevs_add kernel/locking/lockdep.c:3282 [inline]
validate_chain+0x18ef/0x5920 kernel/locking/lockdep.c:3906
__lock_acquire+0x1397/0x2100 kernel/locking/lockdep.c:5228
lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5851
__mutex_lock_common kernel/locking/mutex.c:585 [inline]
__mutex_lock+0x19c/0x1010 kernel/locking/mutex.c:730
rtnl_acquire_if_cleanup_net net/core/dev.c:10272 [inline]
unregister_netdevice_many_notify+0xac2/0x2030 net/core/dev.c:11792
unregister_netdevice_many net/core/dev.c:11875 [inline]
unregister_netdevice_queue+0x303/0x370 net/core/dev.c:11741
unregister_netdevice include/linux/netdevice.h:3329 [inline]
_cfg80211_unregister_wdev+0x163/0x590 net/wireless/core.c:1251
ieee80211_remove_interfaces+0x4ef/0x700 net/mac80211/iface.c:2305
ieee80211_unregister_hw+0x5d/0x2c0 net/mac80211/main.c:1681
mac80211_hwsim_del_radio+0x2c4/0x4c0 drivers/net/wireless/virtual/mac80211_hwsim.c:5664
hwsim_exit_net+0x5c1/0x670 drivers/net/wireless/virtual/mac80211_hwsim.c:6544
ops_exit_list net/core/net_namespace.c:172 [inline]
cleanup_net+0x812/0xd60 net/core/net_namespace.c:652
process_one_work kernel/workqueue.c:3236 [inline]
process_scheduled_works+0xa66/0x1840 kernel/workqueue.c:3317
worker_thread+0x870/0xd30 kernel/workqueue.c:3398
kthread+0x7a9/0x920 kernel/kthread.c:464
ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:148
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
other info that might help us debug this:
Possible unsafe locking scenario:
CPU0 CPU1
---- ----
lock(&rdev->wiphy.mtx);
lock(rtnl_mutex);
lock(&rdev->wiphy.mtx);
lock(rtnl_mutex);
*** DEADLOCK ***
4 locks held by kworker/u8:5/990:
#0: ffff88801baf5948 ((wq_completion)netns){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:3211 [inline]
#0: ffff88801baf5948 ((wq_completion)netns){+.+.}-{0:0}, at: process_scheduled_works+0x93b/0x1840 kernel/workqueue.c:3317
#1: ffffc90003b6fc60 (net_cleanup_work){+.+.}-{0:0}, at: process_one_work kernel/workqueue.c:3212 [inline]
#1: ffffc90003b6fc60 (net_cleanup_work){+.+.}-{0:0}, at: process_scheduled_works+0x976/0x1840 kernel/workqueue.c:3317
#2: ffffffff8fcb94d0 (pernet_ops_rwsem){++++}-{4:4}, at: cleanup_net+0x17a/0xd60 net/core/net_namespace.c:606
#3: ffff888025150768 (&rdev->wiphy.mtx){+.+.}-{4:4}, at: class_wiphy_constructor include/net/cfg80211.h:6061 [inline]
#3: ffff888025150768 (&rdev->wiphy.mtx){+.+.}-{4:4}, at: ieee80211_remove_interfaces+0x129/0x700 net/mac80211/iface.c:2280
stack backtrace:
CPU: 0 UID: 0 PID: 990 Comm: kworker/u8:5 Not tainted 6.13.0-syzkaller-04046-g0ad9617c78ac #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
Workqueue: netns cleanup_net
Call Trace:
__dump_stack lib/dump_stack.c:94 [inline]
dump_stack_lvl+0x241/0x360 lib/dump_stack.c:120
print_circular_bug+0x13a/0x1b0 kernel/locking/lockdep.c:2076
check_noncircular+0x36a/0x4a0 kernel/locking/lockdep.c:2208
check_prev_add kernel/locking/lockdep.c:3163 [inline]
check_prevs_add kernel/locking/lockdep.c:3282 [inline]
validate_chain+0x18ef/0x5920 kernel/locking/lockdep.c:3906
__lock_acquire+0x1397/0x2100 kernel/locking/lockdep.c:5228
lock_acquire+0x1ed/0x550 kernel/locking/lockdep.c:5851
__mutex_lock_common kernel/locking/mutex.c:585 [inline]
__mutex_lock+0x19c/0x1010 kernel/locking/mutex.c:730
rtnl_acquire_if_cleanup_net net/core/dev.c:10272 [inline]
unregister_netdevice_many_notify+0xac2/0x2030 net/core/dev.c:11792
unregister_netdevice_many net/core/dev.c:11875 [inline]
unregister_netdevice_queue+0x303/0x370 net/core/dev.c:11741
unregister_netdevice include/linux/netdevice.h:3329 [inline]
_cfg80211_unregister_wdev+0x163/0x590 net/wireless/core.c:1251
ieee80211_remove_interfaces+0x4ef/0x700 net/mac80211/iface.c:2305
ieee80211_unregister_hw+0x5d/0x2c0 net/mac80211/main.c:1681
mac80211_hwsim_del_radio+0x2c4/0x4c0 drivers/net/wireless/virtual/mac80211_hwsim.c:5664
hwsim_exit_net+0x5c1/0x670 drivers/net/wireless/virtual/mac80211_hwsim.c:6544
ops_exit_list net/core/net_namespace.c:172 [inline]
cleanup_net+0x812/0xd60 net/core/net_namespace.c:652
process_one_work kernel/workqueue.c:3236 [inline]
process_scheduled_works+0xa66/0x1840 kernel/workqueue.c:3317
worker_thread+0x870/0xd30 kernel/workqueue.c:3398
kthread+0x7a9/0x920 kernel/kthread.c:464
ret_from_fork+0x4b/0x80 arch/x86/kernel/process.c:148
ret_from_fork_asm+0x1a/0x30 arch/x86/entry/entry_64.S:244
Warning: Permanently added '10.128.0.224' (ED25519) to the list of known hosts.
2025/01/26 11:41:06 ignoring optional flag "sandboxArg"="0"
2025/01/26 11:41:06 ignoring optional flag "type"="gce"
2025/01/26 11:41:07 parsed 1 programs
[ 63.637713][ T5831] cgroup: Unknown subsys name 'net'
[ 63.746624][ T5831] cgroup: Unknown subsys name 'cpuset'
[ 63.754448][ T5831] cgroup: Unknown subsys name 'rlimit'
[ 65.006914][ T5831] Adding 124996k swap on ./swap-file. Priority:0 extents:1 across:124996k
[ 67.355331][ T5839] soft_limit_in_bytes is deprecated and will be removed. Please report your usecase to linux-mm@kvack.org if you depend on this functionality.
[ 68.174598][ T5865] chnl_net:caif_netlink_parms(): no params data found
[ 68.225432][ T5865] bridge0: port 1(bridge_slave_0) entered blocking state
[ 68.232670][ T5865] bridge0: port 1(bridge_slave_0) entered disabled state
[ 68.240829][ T5865] bridge_slave_0: entered allmulticast mode
[ 68.247877][ T5865] bridge_slave_0: entered promiscuous mode
[ 68.256720][ T5865] bridge0: port 2(bridge_slave_1) entered blocking state
[ 68.263969][ T5865] bridge0: port 2(bridge_slave_1) entered disabled state
[ 68.271136][ T5865] bridge_slave_1: entered allmulticast mode
[ 68.278822][ T5865] bridge_slave_1: entered promiscuous mode
[ 68.307469][ T5865] bond0: (slave bond_slave_0): Enslaving as an active interface with an up link
[ 68.319176][ T5865] bond0: (slave bond_slave_1): Enslaving as an active interface with an up link
[ 68.346721][ T5865] team0: Port device team_slave_0 added
[ 68.355257][ T5865] team0: Port device team_slave_1 added
[ 68.372891][ T5865] batman_adv: batadv0: Adding interface: batadv_slave_0
[ 68.380050][ T5865] batman_adv: batadv0: The MTU of interface batadv_slave_0 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem.
[ 68.406005][ T5865] batman_adv: batadv0: Not using interface batadv_slave_0 (retrying later): interface not active
[ 68.418743][ T5865] batman_adv: batadv0: Adding interface: batadv_slave_1
[ 68.425778][ T5865] batman_adv: batadv0: The MTU of interface batadv_slave_1 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem.
[ 68.451754][ T5865] batman_adv: batadv0: Not using interface batadv_slave_1 (retrying later): interface not active
[ 68.483245][ T5865] hsr_slave_0: entered promiscuous mode
[ 68.489482][ T5865] hsr_slave_1: entered promiscuous mode
[ 68.619954][ T5865] netdevsim netdevsim0 netdevsim0: renamed from eth0
[ 68.631712][ T5865] netdevsim netdevsim0 netdevsim1: renamed from eth1
[ 68.641928][ T5865] netdevsim netdevsim0 netdevsim2: renamed from eth2
[ 68.652931][ T5865] netdevsim netdevsim0 netdevsim3: renamed from eth3
[ 68.675368][ T5865] bridge0: port 2(bridge_slave_1) entered blocking state
[ 68.682506][ T5865] bridge0: port 2(bridge_slave_1) entered forwarding state
[ 68.690742][ T5865] bridge0: port 1(bridge_slave_0) entered blocking state
[ 68.697862][ T5865] bridge0: port 1(bridge_slave_0) entered forwarding state
[ 68.751339][ T5865] 8021q: adding VLAN 0 to HW filter on device bond0
[ 68.769915][ T12] bridge0: port 1(bridge_slave_0) entered disabled state
[ 68.779732][ T12] bridge0: port 2(bridge_slave_1) entered disabled state
[ 68.797032][ T5865] 8021q: adding VLAN 0 to HW filter on device team0
[ 68.817119][ T990] bridge0: port 1(bridge_slave_0) entered blocking state
[ 68.824275][ T990] bridge0: port 1(bridge_slave_0) entered forwarding state
[ 68.838468][ T1161] bridge0: port 2(bridge_slave_1) entered blocking state
[ 68.846260][ T1161] bridge0: port 2(bridge_slave_1) entered forwarding state
[ 68.960061][ T5865] 8021q: adding VLAN 0 to HW filter on device batadv0
[ 68.993800][ T5865] veth0_vlan: entered promiscuous mode
[ 69.004991][ T5865] veth1_vlan: entered promiscuous mode
[ 69.027293][ T5865] veth0_macvtap: entered promiscuous mode
[ 69.036502][ T5865] veth1_macvtap: entered promiscuous mode
[ 69.052824][ T5865] batman_adv: batadv0: Interface activated: batadv_slave_0
[ 69.069020][ T5865] batman_adv: batadv0: Interface activated: batadv_slave_1
[ 69.079971][ T5865] netdevsim netdevsim0 netdevsim0: set [1, 0] type 2 family 0 port 6081 - 0
[ 69.088878][ T5865] netdevsim netdevsim0 netdevsim1: set [1, 0] type 2 family 0 port 6081 - 0
[ 69.098287][ T5865] netdevsim netdevsim0 netdevsim2: set [1, 0] type 2 family 0 port 6081 - 0
[ 69.107607][ T5865] netdevsim netdevsim0 netdevsim3: set [1, 0] type 2 family 0 port 6081 - 0
[ 69.215957][ T990] netdevsim netdevsim0 netdevsim3 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0
[ 69.279760][ T990] netdevsim netdevsim0 netdevsim2 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0
[ 69.347667][ T990] netdevsim netdevsim0 netdevsim1 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0
[ 69.409865][ T990] netdevsim netdevsim0 netdevsim0 (unregistering): unset [1, 0] type 2 family 0 port 6081 - 0
[ 69.978831][ T5145] Bluetooth: hci0: unexpected cc 0x0c03 length: 249 > 1
[ 69.987654][ T5145] Bluetooth: hci0: unexpected cc 0x1003 length: 249 > 9
[ 69.997062][ T5145] Bluetooth: hci0: unexpected cc 0x1001 length: 249 > 9
[ 70.005661][ T5145] Bluetooth: hci0: unexpected cc 0x0c23 length: 249 > 4
[ 70.013727][ T5145] Bluetooth: hci0: unexpected cc 0x0c25 length: 249 > 3
[ 70.021054][ T5145] Bluetooth: hci0: unexpected cc 0x0c38 length: 249 > 2
[ 70.194419][ T1161] wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50
[ 70.203904][ T1161] wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50
2025/01/26 11:41:15 executed programs: 0
[ 70.238015][ T4812] wlan1: Created IBSS using preconfigured BSSID 50:50:50:50:50:50
[ 70.247160][ T4812] wlan1: Creating new IBSS network, BSSID 50:50:50:50:50:50
[ 70.317936][ T5145] Bluetooth: hci0: unexpected cc 0x0c03 length: 249 > 1
[ 70.327441][ T5145] Bluetooth: hci0: unexpected cc 0x1003 length: 249 > 9
[ 70.336394][ T5145] Bluetooth: hci0: unexpected cc 0x1001 length: 249 > 9
[ 70.347238][ T5145] Bluetooth: hci0: unexpected cc 0x0c23 length: 249 > 4
[ 70.355200][ T5145] Bluetooth: hci0: unexpected cc 0x0c25 length: 249 > 3
[ 70.362515][ T5145] Bluetooth: hci0: unexpected cc 0x0c38 length: 249 > 2
[ 70.465893][ T5923] chnl_net:caif_netlink_parms(): no params data found
[ 70.509374][ T5923] bridge0: port 1(bridge_slave_0) entered blocking state
[ 70.516699][ T5923] bridge0: port 1(bridge_slave_0) entered disabled state
[ 70.524201][ T5923] bridge_slave_0: entered allmulticast mode
[ 70.530787][ T5923] bridge_slave_0: entered promiscuous mode
[ 70.540751][ T5923] bridge0: port 2(bridge_slave_1) entered blocking state
[ 70.547984][ T5923] bridge0: port 2(bridge_slave_1) entered disabled state
[ 70.555815][ T5923] bridge_slave_1: entered allmulticast mode
[ 70.562478][ T5923] bridge_slave_1: entered promiscuous mode
[ 70.590225][ T5923] bond0: (slave bond_slave_0): Enslaving as an active interface with an up link
[ 70.601715][ T5923] bond0: (slave bond_slave_1): Enslaving as an active interface with an up link
[ 70.630757][ T5923] team0: Port device team_slave_0 added
[ 70.639972][ T5923] team0: Port device team_slave_1 added
[ 70.660195][ T5923] batman_adv: batadv0: Adding interface: batadv_slave_0
[ 70.667626][ T5923] batman_adv: batadv0: The MTU of interface batadv_slave_0 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem.
[ 70.694507][ T5923] batman_adv: batadv0: Not using interface batadv_slave_0 (retrying later): interface not active
[ 70.707585][ T5923] batman_adv: batadv0: Adding interface: batadv_slave_1
[ 70.714891][ T5923] batman_adv: batadv0: The MTU of interface batadv_slave_1 is too small (1500) to handle the transport of batman-adv packets. Packets going over this interface will be fragmented on layer2 which could impact the performance. Setting the MTU to 1560 would solve the problem.
[ 70.741302][ T5923] batman_adv: batadv0: Not using interface batadv_slave_1 (retrying later): interface not active
[ 70.780252][ T5923] hsr_slave_0: entered promiscuous mode
[ 70.786856][ T5923] hsr_slave_1: entered promiscuous mode
[ 70.792833][ T5923] debugfs: Directory 'hsr0' with parent 'hsr' already present!
[ 70.800821][ T5923] Cannot create hsr debugfs directory
[ 71.737385][ T1297] ieee802154 phy0 wpan0: encryption failed: -22
[ 71.744059][ T1297] ieee802154 phy1 wpan1: encryption failed: -22
[ 72.454193][ T54] Bluetooth: hci0: command tx timeout
[ 72.505573][ T990] bridge_slave_1: left allmulticast mode
[ 72.511471][ T990] bridge_slave_1: left promiscuous mode
[ 72.527963][ T990] bridge0: port 2(bridge_slave_1) entered disabled state
[ 72.541735][ T990] bridge_slave_0: left allmulticast mode
[ 72.549380][ T990] bridge_slave_0: left promiscuous mode
[ 72.555537][ T990] bridge0: port 1(bridge_slave_0) entered disabled state
[ 72.910191][ T990] bond0 (unregistering): (slave bond_slave_0): Releasing backup interface
[ 72.921623][ T990] bond0 (unregistering): (slave bond_slave_1): Releasing backup interface
[ 72.932352][ T990] bond0 (unregistering): Released all slaves
[ 73.064138][ T990] hsr_slave_0: left promiscuous mode
[ 73.070361][ T990] hsr_slave_1: left promiscuous mode
[ 73.079656][ T990] batman_adv: batadv0: Interface deactivated: batadv_slave_0
[ 73.087532][ T990] batman_adv: batadv0: Removing interface: batadv_slave_0
[ 73.098660][ T990] batman_adv: batadv0: Interface deactivated: batadv_slave_1
[ 73.106997][ T990] batman_adv: batadv0: Removing interface: batadv_slave_1
[ 73.126652][ T990] veth1_macvtap: left promiscuous mode
[ 73.132567][ T990] veth0_macvtap: left promiscuous mode
[ 73.140778][ T990] veth1_vlan: left promiscuous mode
[ 73.146371][ T990] veth0_vlan: left promiscuous mode
[ 73.532233][ T990] team0 (unregistering): Port device team_slave_1 removed
[ 73.561901][ T990] team0 (unregistering): Port device team_slave_0 removed
[ 73.921326][ T5923] netdevsim netdevsim0 netdevsim0: renamed from eth0
[ 73.939932][ T5923] netdevsim netdevsim0 netdevsim1: renamed from eth1
[ 73.951184][ T5923] netdevsim netdevsim0 netdevsim2: renamed from eth2
[ 73.969280][ T5923] netdevsim netdevsim0 netdevsim3: renamed from eth3
[ 74.102079][ T5923] 8021q: adding VLAN 0 to HW filter on device bond0
[ 74.129995][ T5923] 8021q: adding VLAN 0 to HW filter on device team0
[ 74.150374][ T62] bridge0: port 1(bridge_slave_0) entered blocking state
[ 74.157585][ T62] bridge0: port 1(bridge_slave_0) entered forwarding state
[ 74.169864][ T62] bridge0: port 2(bridge_slave_1) entered blocking state
[ 74.177069][ T62] bridge0: port 2(bridge_slave_1) entered forwarding state
[ 74.533226][ T54] Bluetooth: hci0: command tx timeout
[ 74.676344][ T990]
[ 74.678727][ T990] ======================================================
[ 74.685851][ T990] WARNING: possible circular locking dependency detected
[ 74.692932][ T990] 6.13.0-syzkaller-04046-g0ad9617c78ac #0 Not tainted
[ 74.699739][ T990] ------------------------------------------------------
[ 74.706771][ T990] kworker/u8:5/990 is trying to acquire lock:
[ 74.708480][ T5923] 8021q: adding VLAN 0 to HW filter on device batadv0
[ 74.712863][ T990] ffffffff8fcc5a88 (rtnl_mutex){+.+.}-{4:4}, at: unregister_netdevice_many_notify+0xac2/0x2030
[ 74.730004][ T990]
[ 74.730004][ T990] but task is already holding lock:
[ 74.737382][ T990] ffff888025150768 (&rdev->wiphy.mtx){+.+.}-{4:4}, at: ieee80211_remove_interfaces+0x129/0x700
[ 74.743771][ T5923] veth0_vlan: entered promiscuous mode
[ 74.747751][ T990]
[ 74.747751][ T990] which lock already depends on the new lock.
[ 74.747751][ T990]
[ 74.747759][ T990]
[ 74.747759][ T990] the existing dependency chain (in reverse order) is:
[ 74.747765][ T990]
[ 74.747765][ T990] -> #1 (
[ 74.758444][ T5923] veth1_vlan: entered promiscuous mode
[ 74.763583][ T990] &rdev->wiphy.mtx){+.+.}-{4:4}:
[ 74.763607][ T990] lock_acquire+0x1ed/0x550
[ 74.763628][ T990] __mutex_lock+0x19c/0x1010
[ 74.790394][ T5923] veth0_macvtap: entered promiscuous mode
[ 74.793221][ T990] wiphy_register+0x1a49/0x27b0
[ 74.793251][ T990] ieee80211_register_hw+0x354e/0x4240
[ 74.793272][ T990] mac80211_hwsim_new_radio+0x2a9f/0x4a90
[ 74.801175][ T5923] veth1_macvtap: entered promiscuous mode
[ 74.804059][ T990] init_mac80211_hwsim+0x87a/0xb00
[ 74.804082][ T990] do_one_initcall+0x248/0x870
[ 74.804101][ T990] do_initcall_level+0x157/0x210
[ 74.804120][ T990] do_initcalls+0x3f/0x80
[ 74.820195][ T5923] batman_adv: batadv0: Interface activated: batadv_slave_0
[ 74.821813][ T990] kernel_init_freeable+0x435/0x5d0
[ 74.832586][ T5923] batman_adv: batadv0: Interface activated: batadv_slave_1
[ 74.833122][ T990] kernel_init+0x1d/0x2b0
[ 74.833143][ T990] ret_from_fork+0x4b/0x80
[ 74.833158][ T990] ret_from_fork_asm+0x1a/0x30
[ 74.833172][ T990]
[ 74.833172][ T990] -> #0 (rtnl_mutex){+.+.}-{4:4}:
[ 74.833199][ T990] validate_chain+0x18ef/0x5920
[ 74.833218][ T990] __lock_acquire+0x1397/0x2100
[ 74.843587][ T5923] netdevsim netdevsim0 netdevsim0: set [1, 0] type 2 family 0 port 6081 - 0
[ 74.843922][ T990] lock_acquire+0x1ed/0x550
[ 74.848860][ T5923] netdevsim netdevsim0 netdevsim1: set [1, 0] type 2 family 0 port 6081 - 0
[ 74.855924][ T990] __mutex_lock+0x19c/0x1010
[ 74.855946][ T990] unregister_netdevice_many_notify+0xac2/0x2030
[ 74.855965][ T990] unregister_netdevice_queue+0x303/0x370
[ 74.855980][ T990] _cfg80211_unregister_wdev+0x163/0x590
[ 74.855999][ T990] ieee80211_remove_interfaces+0x4ef/0x700
[ 74.856015][ T990] ieee80211_unregister_hw+0x5d/0x2c0
[ 74.856029][ T990] mac80211_hwsim_del_radio+0x2c4/0x4c0
[ 74.856046][ T990] hwsim_exit_net+0x5c1/0x670
[ 74.856061][ T990] cleanup_net+0x812/0xd60
[ 74.856074][ T990] process_scheduled_works+0xa66/0x1840
[ 74.856089][ T990] worker_thread+0x870/0xd30
[ 74.865171][ T5923] netdevsim netdevsim0 netdevsim2: set [1, 0] type 2 family 0 port 6081 - 0
[ 74.868983][ T990] kthread+0x7a9/0x920
[ 74.874954][ T5923] netdevsim netdevsim0 netdevsim3: set [1, 0] type 2 family 0 port 6081 - 0
[ 74.878734][ T990] ret_from_fork+0x4b/0x80
[ 75.014932][ T990] ret_from_fork_asm+0x1a/0x30
[ 75.020236][ T990]
[ 75.020236][ T990] other info that might help us debug this:
[ 75.020236][ T990]
[ 75.030469][ T990] Possible unsafe locking scenario:
[ 75.030469][ T990]
[ 75.037927][ T990] CPU0 CPU1
[ 75.043292][ T990] ---- ----
[ 75.048642][ T990] lock(&rdev->wiphy.mtx);
[ 75.053143][ T990] lock(rtnl_mutex);
[ 75.059634][ T990] lock(&rdev->wiphy.mtx);
[ 75.066644][ T990] lock(rtnl_mutex);
[ 75.070618][ T990]
[ 75.070618][ T990] *** DEADLOCK ***
[ 75.070618][ T990]
[ 75.078842][ T990] 4 locks held by kworker/u8:5/990:
[ 75.084024][ T990] #0: ffff88801baf5948 ((wq_completion)netns){+.+.}-{0:0}, at: process_scheduled_works+0x93b/0x1840
[ 75.095157][ T990] #1: ffffc90003b6fc60 (net_cleanup_work){+.+.}-{0:0}, at: process_scheduled_works+0x976/0x1840
[ 75.105676][ T990] #2: ffffffff8fcb94d0 (pernet_ops_rwsem){++++}-{4:4}, at: cleanup_net+0x17a/0xd60
[ 75.115073][ T990] #3: ffff888025150768 (&rdev->wiphy.mtx){+.+.}-{4:4}, at: ieee80211_remove_interfaces+0x129/0x700
[ 75.126209][ T990]
[ 75.126209][ T990] stack backtrace:
[ 75.132105][ T990] CPU: 0 UID: 0 PID: 990 Comm: kworker/u8:5 Not tainted 6.13.0-syzkaller-04046-g0ad9617c78ac #0
[ 75.132120][ T990] Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 12/27/2024
[ 75.132129][ T990] Workqueue: netns cleanup_net
[ 75.132147][ T990] Call Trace:
[ 75.132152][ T990]
[ 75.132158][ T990] dump_stack_lvl+0x241/0x360
[ 75.132178][ T990] ? __pfx_dump_stack_lvl+0x10/0x10
[ 75.132193][ T990] ? __pfx__printk+0x10/0x10
[ 75.132211][ T990] print_circular_bug+0x13a/0x1b0
[ 75.132230][ T990] check_noncircular+0x36a/0x4a0
[ 75.132248][ T990] ? __pfx_check_noncircular+0x10/0x10
[ 75.132264][ T990] ? lockdep_lock+0x123/0x2b0
[ 75.132279][ T990] ? rcu_read_lock_sched_held+0x8d/0x130
[ 75.132298][ T990] validate_chain+0x18ef/0x5920
[ 75.132321][ T990] ? __pfx_validate_chain+0x10/0x10
[ 75.132340][ T990] ? mark_lock+0x9a/0x360
[ 75.132356][ T990] ? __lock_acquire+0x1397/0x2100
[ 75.132375][ T990] ? mark_lock+0x9a/0x360
[ 75.132390][ T990] __lock_acquire+0x1397/0x2100
[ 75.132409][ T990] lock_acquire+0x1ed/0x550
[ 75.132422][ T990] ? unregister_netdevice_many_notify+0xac2/0x2030
[ 75.132440][ T990] ? __pfx_lock_acquire+0x10/0x10
[ 75.132455][ T990] ? __pfx___might_resched+0x10/0x10
[ 75.132469][ T990] ? finish_wait+0xd4/0x1e0
[ 75.132485][ T990] __mutex_lock+0x19c/0x1010
[ 75.132502][ T990] ? unregister_netdevice_many_notify+0xac2/0x2030
[ 75.132520][ T990] ? unregister_netdevice_many_notify+0xac2/0x2030
[ 75.132535][ T990] ? __pfx___mutex_lock+0x10/0x10
[ 75.132552][ T990] ? __pfx___might_resched+0x10/0x10
[ 75.132565][ T990] ? unregister_netdevice_many_notify+0x9fa/0x2030
[ 75.132581][ T990] ? unregister_netdevice_many_notify+0x9fa/0x2030
[ 75.132598][ T990] unregister_netdevice_many_notify+0xac2/0x2030
[ 75.132613][ T990] ? mark_lock+0x9a/0x360
[ 75.132631][ T990] ? __pfx_unregister_netdevice_many_notify+0x10/0x10
[ 75.132646][ T990] ? kernfs_remove_by_name_ns+0x11b/0x160
[ 75.132663][ T990] ? __pfx_lock_release+0x10/0x10
[ 75.132683][ T990] unregister_netdevice_queue+0x303/0x370
[ 75.132697][ T990] ? __pfx_up_write+0x10/0x10
[ 75.132708][ T990] ? __pfx_unregister_netdevice_queue+0x10/0x10
[ 75.132723][ T990] ? kernfs_remove_by_name_ns+0x11b/0x160
[ 75.132740][ T990] _cfg80211_unregister_wdev+0x163/0x590
[ 75.132758][ T990] ieee80211_remove_interfaces+0x4ef/0x700
[ 75.132774][ T990] ? __pfx_ieee80211_remove_interfaces+0x10/0x10
[ 75.132788][ T990] ? rcu_is_watching+0x15/0xb0
[ 75.132806][ T990] ieee80211_unregister_hw+0x5d/0x2c0
[ 75.132820][ T990] mac80211_hwsim_del_radio+0x2c4/0x4c0
[ 75.132842][ T990] ? __pfx_mac80211_hwsim_del_radio+0x10/0x10
[ 75.132859][ T990] hwsim_exit_net+0x5c1/0x670
[ 75.132873][ T990] ? __pfx_hwsim_exit_net+0x10/0x10
[ 75.132886][ T990] ? __ip_vs_dev_cleanup_batch+0x239/0x260
[ 75.132905][ T990] cleanup_net+0x812/0xd60
[ 75.132918][ T990] ? __pfx_cleanup_net+0x10/0x10
[ 75.132931][ T990] ? process_scheduled_works+0x976/0x1840
[ 75.132944][ T990] process_scheduled_works+0xa66/0x1840
[ 75.132966][ T990] ? __pfx_process_scheduled_works+0x10/0x10
[ 75.132983][ T990] ? assign_work+0x364/0x3d0
[ 75.132996][ T990] worker_thread+0x870/0xd30
[ 75.133012][ T990] ? _raw_spin_unlock_irqrestore+0xdd/0x140
[ 75.133028][ T990] ? __kthread_parkme+0x169/0x1d0
[ 75.133043][ T990] ? __pfx_worker_thread+0x10/0x10
[ 75.133055][ T990] kthread+0x7a9/0x920
[ 75.133069][ T990] ? __pfx_kthread+0x10/0x10
[ 75.133084][ T990] ? __pfx_worker_thread+0x10/0x10
[ 75.133096][ T990] ? __pfx_kthread+0x10/0x10
[ 75.133110][ T990] ? __pfx_kthread+0x10/0x10
[ 75.133125][ T990] ? __pfx_kthread+0x10/0x10
[ 75.133138][ T990] ? _raw_spin_unlock_irq+0x23/0x50
[ 75.133152][ T990] ? lockdep_hardirqs_on+0x99/0x150
[ 75.133168][ T990] ? __pfx_kthread+0x10/0x10
[ 75.133182][ T990] ret_from_fork+0x4b/0x80
[ 75.133195][ T990] ? __pfx_kthread+0x10/0x10
[ 75.133209][ T990] ret_from_fork_asm+0x1a/0x30
[ 75.133225][ T990]
[ 75.601522][ T5923] ieee80211 phy5: Selected rate control algorithm 'minstrel_ht'
[ 75.638540][ T12] wlan0: Created IBSS using preconfigured BSSID 50:50:50:50:50:50
[ 75.645094][ T5923] ieee80211 phy6: Selected rate control algorithm 'minstrel_ht'
[ 75.671400][ T12] wlan0: Creating new IBSS network, BSSID 50:50:50:50:50:50
[ 75.717554][ T35] wlan1: Created IBSS using preconfigured BSSID 50:50:50:50:50:50
[ 75.735096][ T35] wlan1: Creating new IBSS network, BSSID 50:50:50:50:50:50
syzkaller build log:
go env (err=)
GO111MODULE='auto'
GOARCH='amd64'
GOBIN=''
GOCACHE='/syzkaller/.cache/go-build'
GOENV='/syzkaller/.config/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='amd64'
GOHOSTOS='linux'
GOINSECURE=''
GOMODCACHE='/syzkaller/jobs-2/linux/gopath/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPATH='/syzkaller/jobs-2/linux/gopath'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/usr/local/go'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/usr/local/go/pkg/tool/linux_amd64'
GOVCS=''
GOVERSION='go1.22.7'
GCCGO='gccgo'
GOAMD64='v1'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOMOD='/syzkaller/jobs-2/linux/gopath/src/github.com/google/syzkaller/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build3976871452=/tmp/go-build -gno-record-gcc-switches'
git status (err=)
HEAD detached at e8709b21d7
nothing to commit, working tree clean
tput: No value for $TERM and no -T specified
tput: No value for $TERM and no -T specified
Makefile:31: run command via tools/syz-env for best compatibility, see:
Makefile:32: https://github.com/google/syzkaller/blob/master/docs/contributing.md#using-syz-env
go list -f '{{.Stale}}' ./sys/syz-sysgen | grep -q false || go install ./sys/syz-sysgen
make .descriptions
tput: No value for $TERM and no -T specified
tput: No value for $TERM and no -T specified
Makefile:31: run command via tools/syz-env for best compatibility, see:
Makefile:32: https://github.com/google/syzkaller/blob/master/docs/contributing.md#using-syz-env
bin/syz-sysgen
go fmt ./sys/... >/dev/null
touch .descriptions
GOOS=linux GOARCH=amd64 go build "-ldflags=-s -w -X github.com/google/syzkaller/prog.GitRevision=e8709b21d7c474a0fb6b8ff13039702865fd83bb -X 'github.com/google/syzkaller/prog.gitRevisionDate=20240715-154907'" "-tags=syz_target syz_os_linux syz_arch_amd64 " -o ./bin/linux_amd64/syz-execprog github.com/google/syzkaller/tools/syz-execprog
mkdir -p ./bin/linux_amd64
g++ -o ./bin/linux_amd64/syz-executor executor/executor.cc \
-m64 -O2 -pthread -Wall -Werror -Wparentheses -Wunused-const-variable -Wframe-larger-than=16384 -Wno-stringop-overflow -Wno-array-bounds -Wno-format-overflow -Wno-unused-but-set-variable -Wno-unused-command-line-argument -static-pie -std=c++17 -I. -Iexecutor/_include -fpermissive -w -DGOOS_linux=1 -DGOARCH_amd64=1 \
-DHOSTGOOS_linux=1 -DGIT_REVISION=\"e8709b21d7c474a0fb6b8ff13039702865fd83bb\"
/usr/bin/ld: /tmp/ccWTTqMD.o: in function `test_cover_filter()':
executor.cc:(.text+0x133bb): warning: the use of `tempnam' is dangerous, better use `mkstemp'
/usr/bin/ld: /tmp/ccWTTqMD.o: in function `Connection::Connect(char const*, char const*)':
executor.cc:(.text._ZN10Connection7ConnectEPKcS1_[_ZN10Connection7ConnectEPKcS1_]+0x1a0): warning: Using 'gethostbyname' in statically linked applications requires at runtime the shared libraries from the glibc version used for linking