syzbot


possible deadlock in team_port_change_check

Status: fixed on 2025/03/17 05:51
Bug presence: origin:upstream
[Documentation on labels]
Reported-by: syzbot+4f4f84e5ae7cf9e36cc8@syzkaller.appspotmail.com
Fix commit: adff6ac889e1 team: prevent adding a device which is already a team device lower
First crash: 389d, last: 73d
Fix bisection: fixed by (bisect log) :
commit adff6ac889e16d97abd1e4543f533221127e978a
Author: Octavian Purdila <tavip@google.com>
Date: Mon Dec 30 20:56:47 2024 +0000

  team: prevent adding a device which is already a team device lower

  
Bug presence (1)
Date Name Commit Repro Result
2024/04/30 upstream (ToT) 98369dccd2f8 C [report] possible deadlock in team_port_change_check
Similar bugs (3)
Kernel Title Repro Cause bisect Fix bisect Count Last Reported Patched Status
upstream possible deadlock in team_port_change_check net 2 1816d 1880d 0/28 auto-closed as invalid on 2020/09/02 22:06
linux-5.15 possible deadlock in team_port_change_check origin:upstream C done 52 53d 389d 3/3 fixed on 2025/04/07 12:55
upstream possible deadlock in team_port_change_check (2) net C done 16406 1d00h 421d 27/28 upstream: reported C repro on 2024/02/29 16:02
Fix bisection attempts (4)
Created Duration User Patch Repo Result
2025/03/16 16:08 5h20m bisect fix linux-6.1.y OK (1) job log
2024/08/31 20:01 2h19m bisect fix linux-6.1.y OK (0) job log log
2024/07/28 01:22 1h28m bisect fix linux-6.1.y OK (0) job log log
2024/05/20 15:21 1h41m bisect fix linux-6.1.y OK (0) job log log

Sample crash report:
netlink: 'syz-executor344': attribute type 10 has an invalid length.
device veth0_vlan left promiscuous mode
device veth0_vlan entered promiscuous mode
============================================
WARNING: possible recursive locking detected
6.1.124-syzkaller #0 Not tainted
--------------------------------------------
syz-executor344/4301 is trying to acquire lock:
ffff0000ded04d00 (team->team_lock_key){+.+.}-{3:3}, at: team_port_change_check+0x5c/0x230 drivers/net/team/team.c:3011

but task is already holding lock:
ffff0000ded04d00 (team->team_lock_key){+.+.}-{3:3}, at: team_add_slave+0xa8/0x1f78 drivers/net/team/team.c:1987

other info that might help us debug this:
 Possible unsafe locking scenario:

       CPU0
       ----
  lock(team->team_lock_key);
  lock(team->team_lock_key);

 *** DEADLOCK ***

 May be due to missing lock nesting notation

2 locks held by syz-executor344/4301:
 #0: ffff8000180c4a08 (rtnl_mutex){+.+.}-{3:3}, at: rtnl_lock net/core/rtnetlink.c:74 [inline]
 #0: ffff8000180c4a08 (rtnl_mutex){+.+.}-{3:3}, at: rtnetlink_rcv_msg+0x6e8/0xd94 net/core/rtnetlink.c:6147
 #1: ffff0000ded04d00 (team->team_lock_key){+.+.}-{3:3}, at: team_add_slave+0xa8/0x1f78 drivers/net/team/team.c:1987

stack backtrace:
CPU: 1 PID: 4301 Comm: syz-executor344 Not tainted 6.1.124-syzkaller #0
Hardware name: Google Google Compute Engine/Google Compute Engine, BIOS Google 09/13/2024
Call trace:
 dump_backtrace+0x1c8/0x1f4 arch/arm64/kernel/stacktrace.c:158
 show_stack+0x2c/0x3c arch/arm64/kernel/stacktrace.c:165
 __dump_stack lib/dump_stack.c:88 [inline]
 dump_stack_lvl+0x108/0x170 lib/dump_stack.c:106
 dump_stack+0x1c/0x5c lib/dump_stack.c:113
 __lock_acquire+0x6310/0x7680 kernel/locking/lockdep.c:5049
 lock_acquire+0x26c/0x7cc kernel/locking/lockdep.c:5662
 __mutex_lock_common+0x190/0x21a0 kernel/locking/mutex.c:603
 __mutex_lock kernel/locking/mutex.c:747 [inline]
 mutex_lock_nested+0x38/0x44 kernel/locking/mutex.c:799
 team_port_change_check+0x5c/0x230 drivers/net/team/team.c:3011
 team_device_event+0x434/0x4d0
 notifier_call_chain kernel/notifier.c:87 [inline]
 raw_notifier_call_chain+0xd4/0x164 kernel/notifier.c:455
 __dev_notify_flags+0x2ac/0x534
 dev_change_flags+0xc8/0x154 net/core/dev.c:8671
 vlan_device_event+0x3f8/0x181c net/8021q/vlan.c:468
 notifier_call_chain kernel/notifier.c:87 [inline]
 raw_notifier_call_chain+0xd4/0x164 kernel/notifier.c:455
 call_netdevice_notifiers_info net/core/dev.c:1970 [inline]
 call_netdevice_notifiers_extack net/core/dev.c:2008 [inline]
 call_netdevice_notifiers net/core/dev.c:2022 [inline]
 dev_open+0x1a4/0x23c net/core/dev.c:1498
 team_port_add drivers/net/team/team.c:1218 [inline]
 team_add_slave+0x704/0x1f78 drivers/net/team/team.c:1988
 do_set_master net/core/rtnetlink.c:2627 [inline]
 do_setlink+0xc14/0x3318 net/core/rtnetlink.c:2837
 __rtnl_newlink net/core/rtnetlink.c:3605 [inline]
 rtnl_newlink+0x1424/0x1b74 net/core/rtnetlink.c:3652
 rtnetlink_rcv_msg+0x72c/0xd94 net/core/rtnetlink.c:6150
 netlink_rcv_skb+0x20c/0x3b8 net/netlink/af_netlink.c:2493
 rtnetlink_rcv+0x28/0x38 net/core/rtnetlink.c:6168
 netlink_unicast_kernel net/netlink/af_netlink.c:1311 [inline]
 netlink_unicast+0x65c/0x898 net/netlink/af_netlink.c:1337
 netlink_sendmsg+0x834/0xb18 net/netlink/af_netlink.c:1859
 sock_sendmsg_nosec net/socket.c:718 [inline]
 __sock_sendmsg net/socket.c:730 [inline]
 ____sys_sendmsg+0x55c/0x848 net/socket.c:2519
 ___sys_sendmsg net/socket.c:2573 [inline]
 __sys_sendmsg+0x26c/0x33c net/socket.c:2602
 __do_sys_sendmsg net/socket.c:2611 [inline]
 __se_sys_sendmsg net/socket.c:2609 [inline]
 __arm64_sys_sendmsg+0x80/0x94 net/socket.c:2609
 __invoke_syscall arch/arm64/kernel/syscall.c:38 [inline]
 invoke_syscall+0x98/0x2bc arch/arm64/kernel/syscall.c:52
 el0_svc_common+0x138/0x258 arch/arm64/kernel/syscall.c:140
 do_el0_svc+0x58/0x13c arch/arm64/kernel/syscall.c:204
 el0_svc+0x58/0x168 arch/arm64/kernel/entry-common.c:637
 el0t_64_sync_handler+0x84/0xf0 arch/arm64/kernel/entry-common.c:655
 el0t_64_sync+0x18c/0x190 arch/arm64/kernel/entry.S:585

Crashes (61):
Time Kernel Commit Syzkaller Config Log Report Syz repro C repro VM info Assets (help?) Manager Title
2025/01/12 03:45 linux-6.1.y c63962be84ef 6dbc6a9b .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 possible deadlock in team_port_change_check
2024/12/01 01:41 linux-6.1.y e4d90d63d385 68914665 .config console log report syz / log C [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 possible deadlock in team_port_change_check
2025/02/12 10:33 linux-6.1.y 0cbb5f65e52f b27c2402 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/02/12 10:32 linux-6.1.y 0cbb5f65e52f b27c2402 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/02/10 13:35 linux-6.1.y 0cbb5f65e52f 43f51a00 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/02/06 21:01 linux-6.1.y 0cbb5f65e52f 8002dd28 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/01/29 17:14 linux-6.1.y 75cefdf153f5 136953f1 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/01/28 16:30 linux-6.1.y 75cefdf153f5 f5427d7c .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan possible deadlock in team_port_change_check
2025/01/28 12:32 linux-6.1.y 75cefdf153f5 f5427d7c .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/01/23 22:29 linux-6.1.y 75cefdf153f5 521b0ce3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/01/15 01:42 linux-6.1.y c63962be84ef f310a27d .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/01/14 04:26 linux-6.1.y c63962be84ef b1f1cd88 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/01/14 00:58 linux-6.1.y c63962be84ef b1f1cd88 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/01/09 18:01 linux-6.1.y c63962be84ef 9220929f .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/01/09 09:48 linux-6.1.y 7dc732d24ff7 9220929f .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/12/20 10:19 linux-6.1.y 29f02ec58a94 0f61b415 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/12/19 17:06 linux-6.1.y 52f863f820fd 5905cb39 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/12/19 17:06 linux-6.1.y 52f863f820fd 5905cb39 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/12/17 09:31 linux-6.1.y 52f863f820fd f93b2b55 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan possible deadlock in team_port_change_check
2024/12/17 09:29 linux-6.1.y 52f863f820fd f93b2b55 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan possible deadlock in team_port_change_check
2024/12/15 23:27 linux-6.1.y 52f863f820fd 7cbfbb3a .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/12/04 16:22 linux-6.1.y e4d90d63d385 b50eb251 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/12/03 03:58 linux-6.1.y e4d90d63d385 578925bc .config console log report info ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/12/03 02:58 linux-6.1.y e4d90d63d385 578925bc .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan possible deadlock in team_port_change_check
2024/11/26 15:09 linux-6.1.y e4d90d63d385 e9a9a9f2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/11/26 15:07 linux-6.1.y e4d90d63d385 e9a9a9f2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/11/26 14:34 linux-6.1.y e4d90d63d385 e9a9a9f2 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/11/23 00:55 linux-6.1.y e4d90d63d385 68da6d95 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/11/22 20:15 linux-6.1.y e4d90d63d385 4b25d554 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/11/14 10:31 linux-6.1.y d7039b844a1c a8c99394 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan possible deadlock in team_port_change_check
2024/11/14 06:49 linux-6.1.y d7039b844a1c a8c99394 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/10/24 12:08 linux-6.1.y 7ec6f9fa3d97 0d144d1a .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan possible deadlock in team_port_change_check
2024/10/24 12:08 linux-6.1.y 7ec6f9fa3d97 0d144d1a .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan possible deadlock in team_port_change_check
2024/10/22 15:12 linux-6.1.y 7ec6f9fa3d97 a93682b3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/10/19 01:14 linux-6.1.y 54d90d17e8ce cd6fc0a3 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/10/16 17:43 linux-6.1.y aa4cd140bba5 666f77ed .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/10/16 17:43 linux-6.1.y aa4cd140bba5 666f77ed .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/10/11 07:46 linux-6.1.y aa4cd140bba5 cd942402 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan possible deadlock in team_port_change_check
2024/10/09 12:46 linux-6.1.y aa4cd140bba5 56fb2cb7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/10/08 03:48 linux-6.1.y aa4cd140bba5 402f1df0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/10/08 03:48 linux-6.1.y aa4cd140bba5 402f1df0 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/10/07 17:49 linux-6.1.y aa4cd140bba5 d7906eff .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/10/02 16:51 linux-6.1.y aa4cd140bba5 02f9582a .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/10/01 02:32 linux-6.1.y aa4cd140bba5 bbd4e0a4 .config console log report info ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/06/12 06:12 linux-6.1.y 88690811da69 4d75f4f7 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan possible deadlock in team_port_change_check
2024/06/06 06:13 linux-6.1.y 88690811da69 121701b6 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan possible deadlock in team_port_change_check
2024/04/16 14:31 linux-6.1.y cd5d98c0556c 0d592ce4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/04/16 08:12 linux-6.1.y cd5d98c0556c 0d592ce4 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/04/01 18:16 linux-6.1.y e5cd595e23c1 6baf5069 .config console log report syz C [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2024/04/01 17:20 linux-6.1.y e5cd595e23c1 6baf5069 .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-perf possible deadlock in team_port_change_check
2025/01/03 21:05 linux-6.1.y 7dc732d24ff7 f3558dbf .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 possible deadlock in team_port_change_check
2024/11/08 02:02 linux-6.1.y 7c15117f9468 867e44df .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 possible deadlock in team_port_change_check
2024/10/25 22:18 linux-6.1.y 7ec6f9fa3d97 045e728d .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 possible deadlock in team_port_change_check
2024/06/03 06:30 linux-6.1.y 88690811da69 3113787f .config console log report info [disk image] [vmlinux] [kernel image] ci2-linux-6-1-kasan-arm64 possible deadlock in team_port_change_check
* Struck through repros no longer work on HEAD.