netlink: 12 bytes leftover after parsing attributes in process `syz.0.4074'. ====================================================== WARNING: possible circular locking dependency detected syzkaller #0 Not tainted ------------------------------------------------------ syz.0.4074/24809 is trying to acquire lock: ffff888076b0cd00 (team->team_lock_key#21){+.+.}-{3:3}, at: team_del_slave+0x2d/0x1d0 drivers/net/team/team.c:2011 but task is already holding lock: ffff88801ffc0688 (&rdev->wiphy.mtx){+.+.}-{3:3}, at: nl80211_del_interface+0x11c/0x350 net/wireless/nl80211.c:4118 which lock already depends on the new lock. the existing dependency chain (in reverse order) is: -> #1 (&rdev->wiphy.mtx){+.+.}-{3:3}: __mutex_lock_common+0x1e5/0x2400 kernel/locking/mutex.c:596 __mutex_lock kernel/locking/mutex.c:729 [inline] mutex_lock_nested+0x17/0x20 kernel/locking/mutex.c:743 wiphy_lock include/net/cfg80211.h:5319 [inline] ieee80211_open+0x140/0x200 net/mac80211/iface.c:361 __dev_open+0x2bf/0x430 net/core/dev.c:1550 dev_open+0xa7/0x180 net/core/dev.c:1586 team_port_add drivers/net/team/team.c:1222 [inline] team_add_slave+0x656/0x2840 drivers/net/team/team.c:1997 do_set_master net/core/rtnetlink.c:2589 [inline] do_setlink+0xe79/0x29d0 net/core/rtnetlink.c:2800 __rtnl_newlink net/core/rtnetlink.c:3464 [inline] rtnl_newlink+0x15bb/0x1920 net/core/rtnetlink.c:3586 rtnetlink_rcv_msg+0x7f1/0xf10 net/core/rtnetlink.c:5698 netlink_rcv_skb+0x1e9/0x430 net/netlink/af_netlink.c:2519 netlink_unicast_kernel net/netlink/af_netlink.c:1314 [inline] netlink_unicast+0x78f/0x940 net/netlink/af_netlink.c:1340 netlink_sendmsg+0x8ba/0xbe0 net/netlink/af_netlink.c:1919 sock_sendmsg_nosec net/socket.c:706 [inline] __sock_sendmsg net/socket.c:718 [inline] ____sys_sendmsg+0x5be/0x8f0 net/socket.c:2446 ___sys_sendmsg+0x236/0x2e0 net/socket.c:2500 __sys_sendmsg net/socket.c:2529 [inline] __do_sys_sendmsg net/socket.c:2538 [inline] __se_sys_sendmsg+0x1b7/0x2a0 net/socket.c:2536 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x66/0xd0 -> #0 (team->team_lock_key#21){+.+.}-{3:3}: check_prev_add kernel/locking/lockdep.c:3053 [inline] check_prevs_add kernel/locking/lockdep.c:3172 [inline] validate_chain kernel/locking/lockdep.c:3788 [inline] __lock_acquire+0x2c66/0x7b50 kernel/locking/lockdep.c:5012 lock_acquire+0x19e/0x400 kernel/locking/lockdep.c:5625 __mutex_lock_common+0x1e5/0x2400 kernel/locking/mutex.c:596 __mutex_lock kernel/locking/mutex.c:729 [inline] mutex_lock_nested+0x17/0x20 kernel/locking/mutex.c:743 team_del_slave+0x2d/0x1d0 drivers/net/team/team.c:2011 team_device_event+0x38e/0x9e0 drivers/net/team/team.c:3055 notifier_call_chain kernel/notifier.c:83 [inline] raw_notifier_call_chain+0xcb/0x160 kernel/notifier.c:391 call_netdevice_notifiers_extack net/core/dev.c:2074 [inline] call_netdevice_notifiers net/core/dev.c:2088 [inline] unregister_netdevice_many+0x109b/0x1a40 net/core/dev.c:11160 unregister_netdevice_queue+0x2e1/0x320 net/core/dev.c:11093 unregister_netdevice include/linux/netdevice.h:3047 [inline] _cfg80211_unregister_wdev+0x181/0x500 net/wireless/core.c:1198 ieee80211_if_remove+0x1ad/0x2a0 net/mac80211/iface.c:2114 ieee80211_del_iface+0x15/0x20 net/mac80211/cfg.c:145 rdev_del_virtual_intf net/wireless/rdev-ops.h:57 [inline] nl80211_del_interface+0x1ea/0x350 net/wireless/nl80211.c:4120 genl_family_rcv_msg_doit net/netlink/genetlink.c:731 [inline] genl_family_rcv_msg net/netlink/genetlink.c:775 [inline] genl_rcv_msg+0xd0b/0xfa0 net/netlink/genetlink.c:792 netlink_rcv_skb+0x1e9/0x430 net/netlink/af_netlink.c:2519 genl_rcv+0x24/0x40 net/netlink/genetlink.c:803 netlink_unicast_kernel net/netlink/af_netlink.c:1314 [inline] netlink_unicast+0x78f/0x940 net/netlink/af_netlink.c:1340 netlink_sendmsg+0x8ba/0xbe0 net/netlink/af_netlink.c:1919 sock_sendmsg_nosec net/socket.c:706 [inline] __sock_sendmsg net/socket.c:718 [inline] ____sys_sendmsg+0x5be/0x8f0 net/socket.c:2446 ___sys_sendmsg+0x236/0x2e0 net/socket.c:2500 __sys_sendmsg net/socket.c:2529 [inline] __do_sys_sendmsg net/socket.c:2538 [inline] __se_sys_sendmsg+0x1b7/0x2a0 net/socket.c:2536 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x66/0xd0 other info that might help us debug this: Possible unsafe locking scenario: CPU0 CPU1 ---- ---- lock(&rdev->wiphy.mtx); lock(team->team_lock_key#21); lock(&rdev->wiphy.mtx); lock(team->team_lock_key#21); *** DEADLOCK *** 3 locks held by syz.0.4074/24809: #0: ffffffff8d4aa450 (cb_lock){++++}-{3:3}, at: genl_rcv+0x15/0x40 net/netlink/genetlink.c:802 #1: ffffffff8d44d548 (rtnl_mutex){+.+.}-{3:3}, at: nl80211_pre_doit+0x28/0x540 net/wireless/nl80211.c:14971 #2: ffff88801ffc0688 (&rdev->wiphy.mtx){+.+.}-{3:3}, at: nl80211_del_interface+0x11c/0x350 net/wireless/nl80211.c:4118 stack backtrace: CPU: 0 PID: 24809 Comm: syz.0.4074 Not tainted syzkaller #0 Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 07/24/2026 Call Trace: dump_stack_lvl+0x188/0x250 lib/dump_stack.c:106 check_noncircular+0x296/0x330 kernel/locking/lockdep.c:2133 check_prev_add kernel/locking/lockdep.c:3053 [inline] check_prevs_add kernel/locking/lockdep.c:3172 [inline] validate_chain kernel/locking/lockdep.c:3788 [inline] __lock_acquire+0x2c66/0x7b50 kernel/locking/lockdep.c:5012 lock_acquire+0x19e/0x400 kernel/locking/lockdep.c:5625 __mutex_lock_common+0x1e5/0x2400 kernel/locking/mutex.c:596 __mutex_lock kernel/locking/mutex.c:729 [inline] mutex_lock_nested+0x17/0x20 kernel/locking/mutex.c:743 team_del_slave+0x2d/0x1d0 drivers/net/team/team.c:2011 team_device_event+0x38e/0x9e0 drivers/net/team/team.c:3055 notifier_call_chain kernel/notifier.c:83 [inline] raw_notifier_call_chain+0xcb/0x160 kernel/notifier.c:391 call_netdevice_notifiers_extack net/core/dev.c:2074 [inline] call_netdevice_notifiers net/core/dev.c:2088 [inline] unregister_netdevice_many+0x109b/0x1a40 net/core/dev.c:11160 unregister_netdevice_queue+0x2e1/0x320 net/core/dev.c:11093 unregister_netdevice include/linux/netdevice.h:3047 [inline] _cfg80211_unregister_wdev+0x181/0x500 net/wireless/core.c:1198 ieee80211_if_remove+0x1ad/0x2a0 net/mac80211/iface.c:2114 ieee80211_del_iface+0x15/0x20 net/mac80211/cfg.c:145 rdev_del_virtual_intf net/wireless/rdev-ops.h:57 [inline] nl80211_del_interface+0x1ea/0x350 net/wireless/nl80211.c:4120 genl_family_rcv_msg_doit net/netlink/genetlink.c:731 [inline] genl_family_rcv_msg net/netlink/genetlink.c:775 [inline] genl_rcv_msg+0xd0b/0xfa0 net/netlink/genetlink.c:792 netlink_rcv_skb+0x1e9/0x430 net/netlink/af_netlink.c:2519 genl_rcv+0x24/0x40 net/netlink/genetlink.c:803 netlink_unicast_kernel net/netlink/af_netlink.c:1314 [inline] netlink_unicast+0x78f/0x940 net/netlink/af_netlink.c:1340 netlink_sendmsg+0x8ba/0xbe0 net/netlink/af_netlink.c:1919 sock_sendmsg_nosec net/socket.c:706 [inline] __sock_sendmsg net/socket.c:718 [inline] ____sys_sendmsg+0x5be/0x8f0 net/socket.c:2446 ___sys_sendmsg+0x236/0x2e0 net/socket.c:2500 __sys_sendmsg net/socket.c:2529 [inline] __do_sys_sendmsg net/socket.c:2538 [inline] __se_sys_sendmsg+0x1b7/0x2a0 net/socket.c:2536 do_syscall_x64 arch/x86/entry/common.c:50 [inline] do_syscall_64+0x4c/0xa0 arch/x86/entry/common.c:80 entry_SYSCALL_64_after_hwframe+0x66/0xd0 RIP: 0033:0x7fd4082c0159 Code: ff c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 44 00 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 c7 c1 e8 ff ff ff f7 d8 64 89 01 48 RSP: 002b:00007fd406518028 EFLAGS: 00000246 ORIG_RAX: 000000000000002e RAX: ffffffffffffffda RBX: 00007fd408547fa0 RCX: 00007fd4082c0159 RDX: 0000000000000004 RSI: 00002000000002c0 RDI: 0000000000000005 RBP: 00007fd40835706b R08: 0000000000000000 R09: 0000000000000000 R10: 0000000000000000 R11: 0000000000000246 R12: 0000000000000000 R13: 00007fd408548038 R14: 00007fd408547fa0 R15: 00007ffd09f4e6b8 mac80211_hwsim hwsim43 wlan1 (unregistering): bond_netdev_event received NETDEV_CHANGELOWERSTATE net wlan1: siw: event 27 mac80211_hwsim hwsim43 wlan1 (unregistering): bond_netdev_event received NETDEV_PRECHANGEUPPER net wlan1: siw: event 26 Remove adjacency: dev wlan1 adj_dev team0 ref_nr 1 kernfs master: removing kernfs upper_team0: removing adjacency: dev_put for team0, because link removed from wlan1 to team0 Remove adjacency: dev team0 adj_dev wlan1 ref_nr 1 kernfs lower_wlan1: removing adjacency: dev_put for wlan1, because link removed from team0 to wlan1 mac80211_hwsim hwsim43 wlan1 (unregistering): bond_netdev_event received NETDEV_CHANGEUPPER net wlan1: siw: event 21 mac80211_hwsim hwsim43 wlan1 (unregistering): bond_netdev_event received NETDEV_PRE_CHANGEADDR net wlan1: siw: event 9 mac80211_hwsim hwsim43 wlan1 (unregistering): bond_netdev_event received NETDEV_CHANGEADDR net wlan1: siw: event 8 team0: Port device wlan1 removed team0: bond_netdev_event received NETDEV_FEAT_CHANGE net team0: siw: event 12 net wlan1: siw: event 6 kobject: 'rx-0' (ffff8880616c5750): kobject_cleanup, parent ffff88801be3df50 kobject: 'rx-0' (ffff8880616c5750): auto cleanup kobject_del kernfs rps_cpus: removing kernfs rps_flow_cnt: removing kobject: 'rx-0' (ffff8880616c5750): auto cleanup 'remove' event kobject: 'rx-0' (ffff8880616c5750): kobject_uevent_env kobject: 'rx-0' (ffff8880616c5750): fill_kobj_path: path = '/devices/virtual/mac80211_hwsim/hwsim43/net/wlan1/queues/rx-0' kernfs rx-0: removing kobject: 'rx-0' (ffff8880616c5750): calling ktype release kobject: 'rx-0': free name kernfs limit: removing kernfs limit_max: removing kernfs limit_min: removing kernfs hold_time: removing kernfs inflight: removing kernfs byte_queue_limits: removing kobject: 'tx-3' (ffff8880740e6498): kobject_cleanup, parent ffff88801be3df50 kobject: 'tx-3' (ffff8880740e6498): auto cleanup kobject_del kernfs tx_timeout: removing kernfs traffic_class: removing kernfs xps_cpus: removing kernfs xps_rxqs: removing kernfs tx_maxrate: removing kobject: 'tx-3' (ffff8880740e6498): auto cleanup 'remove' event kobject: 'tx-3' (ffff8880740e6498): kobject_uevent_env kobject: 'tx-3' (ffff8880740e6498): fill_kobj_path: path = '/devices/virtual/mac80211_hwsim/hwsim43/net/wlan1/queues/tx-3' kernfs tx-3: removing kobject: 'tx-3' (ffff8880740e6498): calling ktype release kobject: 'tx-3': free name kernfs limit: removing kernfs limit_max: removing kernfs limit_min: removing kernfs hold_time: removing kernfs inflight: removing kernfs byte_queue_limits: removing kobject: 'tx-2' (ffff8880740e6318): kobject_cleanup, parent ffff88801be3df50 kobject: 'tx-2' (ffff8880740e6318): auto cleanup kobject_del kernfs tx_timeout: removing kernfs traffic_class: removing kernfs xps_cpus: removing kernfs xps_rxqs: removing kernfs tx_maxrate: removing kobject: 'tx-2' (ffff8880740e6318): auto cleanup 'remove' event kobject: 'tx-2' (ffff8880740e6318): kobject_uevent_env kobject: 'tx-2' (ffff8880740e6318): fill_kobj_path: path = '/devices/virtual/mac80211_hwsim/hwsim43/net/wlan1/queues/tx-2' kernfs tx-2: removing kobject: 'tx-2' (ffff8880740e6318): calling ktype release kobject: 'tx-2': free name kernfs limit: removing kernfs limit_max: removing kernfs limit_min: removing kernfs hold_time: removing kernfs inflight: removing kernfs byte_queue_limits: removing kobject: 'tx-1' (ffff8880740e6198): kobject_cleanup, parent ffff88801be3df50 kobject: 'tx-1' (ffff8880740e6198): auto cleanup kobject_del kernfs tx_timeout: removing kernfs traffic_class: removing kernfs xps_cpus: removing kernfs xps_rxqs: removing kernfs tx_maxrate: removing kobject: 'tx-1' (ffff8880740e6198): auto cleanup 'remove' event kobject: 'tx-1' (ffff8880740e6198): kobject_uevent_env kobject: 'tx-1' (ffff8880740e6198): fill_kobj_path: path = '/devices/virtual/mac80211_hwsim/hwsim43/net/wlan1/queues/tx-1' kernfs tx-1: removing kobject: 'tx-1' (ffff8880740e6198): calling ktype release kobject: 'tx-1': free name kernfs limit: removing kernfs limit_max: removing kernfs limit_min: removing kernfs hold_time: removing kernfs inflight: removing kernfs byte_queue_limits: removing kobject: 'tx-0' (ffff8880740e6018): kobject_cleanup, parent ffff88801be3df50