public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jakub Kicinski <kuba@kernel.org>
To: Marc Harvey <marcharvey@google.com>
Cc: Jiri Pirko <jiri@resnulli.us>,
	Andrew Lunn <andrew+netdev@lunn.ch>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Paolo Abeni <pabeni@redhat.com>, Shuah Khan <shuah@kernel.org>,
	Simon Horman <horms@kernel.org>,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-kselftest@vger.kernel.org
Subject: Re: [PATCH net-next v4 00/10] Decouple receive and transmit enablement in team driver
Date: Fri, 3 Apr 2026 12:30:39 -0700	[thread overview]
Message-ID: <20260403123039.77c80266@kernel.org> (raw)
In-Reply-To: <20260403-teaming-driver-internal-v4-0-d3032f33ca25@google.com>

On Fri, 03 Apr 2026 07:14:21 +0000 Marc Harvey wrote:
> Allow independent control over receive and transmit enablement states
> for aggregated ports in the team driver.
> 
> The motivation is that IEE 802.3ad LACP "independent control" can't
> be implemented for the team driver currently. This was added to the
> bonding driver in commit 240fd405528b ("bonding: Add independent
> control state machine").
> 
> This series also has a few patches that add tests to show that the old
> coupled enablement still works and that the new decoupled enablement
> works as intended (4, 5, and 10).
> 
> There are three patches with small fixes as well, with the goal of
> making the final decouplement patch clearer (1, 2, and 3).

The test seems flaky, we hit this twice in the last 24h:

make[1]: Nothing to be done for 'all'.
TAP version 13
1..1
# timeout set to 45
# selftests: drivers/net/team: teamd_activebackup.sh
# Setting up two-link aggregation for runner activebackup
# Conf files are /tmp/tmp.KEuJWeKPaz and /tmp/tmp.yNhnkNmKxF
# This program is not intended to be run as root.
# This program is not intended to be run as root.
# Created team devices
# PING fd00::2 (fd00::2) 56 data bytes
# 64 bytes from fd00::2: icmp_seq=1 ttl=64 time=0.032 ms
# 
# --- fd00::2 ping statistics ---
# 1 packets transmitted, 1 received, 0% packet loss, time 0ms
# rtt min/avg/max/mdev = 0.032/0.032/0.032/0.000 msPacket count for test_team2 was 136
# Packet count for eth0 was 1
# Packet count for eth1 was 123
# Packet count for eth0 was 122
# Packet count for eth1 was 0
# TEST: teamd active backup runner test                               [FAIL]
# eth0 IS transmitting when disabled
# Tearing down two-link aggregation
not ok 1 selftests: drivers/net/team: teamd_activebackup.sh # exit=1
/srv/vmksft/testing/wt-9/tools/testing/selftests/kselftest/runner.sh: line 50: : No such file or directory
make: Leaving directory '/srv/vmksft/testing/wt-9/tools/testing/selftests'


What's even worse the retry of the test then fails like this:

make: Entering directory '/srv/vmksft/testing/wt-9/tools/testing/selftests'
make[1]: Nothing to be done for 'all'.
TAP version 13
1..1
# timeout set to 45
# selftests: drivers/net/team: teamd_activebackup.sh
# Setting up two-link aggregation for runner activebackup
# Conf files are /tmp/tmp.R4C5kfI62n and /tmp/tmp.tXdWkJ9GjO
# This program is not intended to be run as root.
# Daemon already running on PID 31311.
# Failed: File exists
# This program is not intended to be run as root.
# Daemon already running on PID 31315.
# Failed: File exists
# Created team devices
# Cannot find device "test_team1"
# Cannot find device "test_team2"
# Cannot find device "test_team1"
# Cannot find device "test_team2"
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# ping: connect: Network is unreachable
# cat: /sys/class/net/test_team2/statistics/rx_packets: No such file or directory
# cat: /sys/class/net/test_team2/statistics/rx_packets: No such file or directory
# Packet count for test_team2 was 0
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Packet count for eth0 was 0
# Packet count for eth1 was 0
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team1" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Device "test_team2" does not exist
# Packet count for eth0 was 0
# Packet count for eth1 was 0
# TEST: teamd active backup runner test                               [FAIL]
# Traffic did not reach team interface in NS2.
# ./team_lib.sh: line 88: kill: (1323) - No such process
# Tearing down two-link aggregation
not ok 1 selftests: drivers/net/team: teamd_activebackup.sh # exit=1
-- 
pw-bot: cr

  parent reply	other threads:[~2026-04-03 19:30 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-03  7:14 [PATCH net-next v4 00/10] Decouple receive and transmit enablement in team driver Marc Harvey
2026-04-03  7:14 ` [PATCH net-next v4 01/10] net: team: Annotate reads and writes for mixed lock accessed values Marc Harvey
2026-04-03  7:14 ` [PATCH net-next v4 02/10] net: team: Remove unused team_mode_op, port_enabled Marc Harvey
2026-04-03  7:14 ` [PATCH net-next v4 03/10] net: team: Rename port_disabled team mode op to port_tx_disabled Marc Harvey
2026-04-03  7:14 ` [PATCH net-next v4 04/10] selftests: net: Add tests for failover of team-aggregated ports Marc Harvey
2026-04-03  7:14 ` [PATCH net-next v4 05/10] selftests: net: Add test for enablement of ports with teamd Marc Harvey
2026-04-03  7:14 ` [PATCH net-next v4 06/10] net: team: Rename enablement functions and struct members to tx Marc Harvey
2026-04-03  7:14 ` [PATCH net-next v4 07/10] net: team: Track rx enablement separately from tx enablement Marc Harvey
2026-04-03  7:14 ` [PATCH net-next v4 08/10] net: team: Add new rx_enabled team port option Marc Harvey
2026-04-03  7:14 ` [PATCH net-next v4 09/10] net: team: Add new tx_enabled " Marc Harvey
2026-04-03  7:14 ` [PATCH net-next v4 10/10] selftests: net: Add tests for team driver decoupled tx and rx control Marc Harvey
2026-04-03 19:30 ` Jakub Kicinski [this message]
2026-04-04  1:33   ` [PATCH net-next v4 00/10] Decouple receive and transmit enablement in team driver Marc Harvey

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260403123039.77c80266@kernel.org \
    --to=kuba@kernel.org \
    --cc=andrew+netdev@lunn.ch \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=horms@kernel.org \
    --cc=jiri@resnulli.us \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-kselftest@vger.kernel.org \
    --cc=marcharvey@google.com \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=shuah@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox