All of lore.kernel.org
 help / color / mirror / Atom feed
From: Petr Machata <petrm@nvidia.com>
To: Vladimir Oltean <vladimir.oltean@nxp.com>
Cc: Ido Schimmel <idosch@nvidia.com>, <netdev@vger.kernel.org>,
	<davem@davemloft.net>, <kuba@kernel.org>, <pabeni@redhat.com>,
	<edumazet@google.com>, <petrm@nvidia.com>, <razor@blackwall.org>,
	<mirsad.todorovac@alu.unizg.hr>
Subject: Re: [PATCH net 10/17] selftests: forwarding: ethtool_mm: Skip when using veth pairs
Date: Wed, 2 Aug 2023 14:27:49 +0200	[thread overview]
Message-ID: <87fs51eig3.fsf@nvidia.com> (raw)
In-Reply-To: <20230802105243.nqwugrz5aof5fbbk@skbuf>


Vladimir Oltean <vladimir.oltean@nxp.com> writes:

> Hi Ido,
>
> On Wed, Aug 02, 2023 at 10:51:11AM +0300, Ido Schimmel wrote:
>> MAC Merge cannot be tested with veth pairs, resulting in failures:
>> 
>>  # ./ethtool_mm.sh
>>  [...]
>>  TEST: Manual configuration with verification: swp1 to swp2          [FAIL]
>>          Verification did not succeed
>> 
>> Fix by skipping the test when used with veth pairs.
>> 
>> Fixes: e6991384ace5 ("selftests: forwarding: add a test for MAC Merge layer")
>> Reported-by: Mirsad Todorovac <mirsad.todorovac@alu.unizg.hr>
>> Closes: https://lore.kernel.org/netdev/adc5e40d-d040-a65e-eb26-edf47dac5b02@alu.unizg.hr/
>> Signed-off-by: Ido Schimmel <idosch@nvidia.com>
>> Reviewed-by: Petr Machata <petrm@nvidia.com>
>> Tested-by: Mirsad Todorovac <mirsad.todorovac@alu.unizg.hr>
>> ---
>
> That will skip the selftest just for veth pairs. This will skip it for
> any device that doesn't support the MAC Merge layer:
>
> diff --git a/tools/testing/selftests/net/forwarding/ethtool_mm.sh b/tools/testing/selftests/net/forwarding/ethtool_mm.sh
> index c580ad623848..5432848a3c59 100755
> --- a/tools/testing/selftests/net/forwarding/ethtool_mm.sh
> +++ b/tools/testing/selftests/net/forwarding/ethtool_mm.sh
> @@ -224,6 +224,8 @@ h1_create()
>  		hw 1
>
>  	ethtool --set-mm $h1 pmac-enabled on tx-enabled off verify-enabled off
> +
> +	h1_created=yes
>  }
>
>  h2_create()
> @@ -236,10 +238,16 @@ h2_create()
>  		queues 1@0 1@1 1@2 1@3 \
>  		fp P E E E \
>  		hw 1
> +
> +	h2_created=yes
>  }
>
>  h1_destroy()
>  {
> +	if ! [[ $h1_created = yes ]]; then
> +		return
> +	fi
> +
>  	ethtool --set-mm $h1 pmac-enabled off tx-enabled off verify-enabled off
>
>  	tc qdisc del dev $h1 root
> @@ -249,6 +257,10 @@ h1_destroy()
>
>  h2_destroy()
>  {
> +	if ! [[ $h2_created = yes ]]; then
> +		return
> +	fi
> +
>  	tc qdisc del dev $h2 root
>
>  	ethtool --set-mm $h2 pmac-enabled off tx-enabled off verify-enabled off
> @@ -266,6 +278,14 @@ setup_prepare()
>  	h1=${NETIFS[p1]}
>  	h2=${NETIFS[p2]}
>
> +	for netif in ${NETIFS[@]}; do
> +		ethtool --show-mm $netif 2>&1 &> /dev/null
> +		if [[ $? -ne 0 ]]; then
> +			echo "SKIP: $netif does not support MAC Merge"
> +			exit $ksft_skip
> +		fi
> +	done
> +

Ido, if you decide to go this route, just hoist the loop to the global
scope before registering the trap, then you don't need tho hX_created
business.

>  	h1_create
>  	h2_create
>  }


  reply	other threads:[~2023-08-02 12:29 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-08-02  7:51 [PATCH net 00/17] selftests: forwarding: Various fixes Ido Schimmel
2023-08-02  7:51 ` [PATCH net 01/17] selftests: forwarding: Skip test when no interfaces are specified Ido Schimmel
2023-08-02  7:51 ` [PATCH net 02/17] selftests: forwarding: Switch off timeout Ido Schimmel
2023-08-02  7:51 ` [PATCH net 03/17] selftests: forwarding: bridge_mdb: Check iproute2 version Ido Schimmel
2023-08-02  7:51 ` [PATCH net 04/17] selftests: forwarding: bridge_mdb_max: " Ido Schimmel
2023-08-02  7:51 ` [PATCH net 05/17] selftests: forwarding: Set default IPv6 traceroute utility Ido Schimmel
2023-08-02  7:51 ` [PATCH net 06/17] selftests: forwarding: Add a helper to skip test when using veth pairs Ido Schimmel
2023-08-02  7:51 ` [PATCH net 07/17] selftests: forwarding: ethtool: Skip " Ido Schimmel
2023-08-02  7:51 ` [PATCH net 08/17] selftests: forwarding: ethtool_extended_state: " Ido Schimmel
2023-08-02  7:51 ` [PATCH net 09/17] selftests: forwarding: hw_stats_l3_gre: " Ido Schimmel
2023-08-02  7:51 ` [PATCH net 10/17] selftests: forwarding: ethtool_mm: " Ido Schimmel
2023-08-02 10:52   ` Vladimir Oltean
2023-08-02 12:27     ` Petr Machata [this message]
2023-08-02 13:30       ` Ido Schimmel
2023-08-02 13:33         ` Vladimir Oltean
2023-08-02 14:22         ` Petr Machata
2023-08-02  7:51 ` [PATCH net 11/17] selftests: forwarding: tc_actions: Use ncat instead of nc Ido Schimmel
2023-08-02  7:51 ` [PATCH net 12/17] selftests: forwarding: tc_flower: Relax success criterion Ido Schimmel
2023-08-02  7:51 ` [PATCH net 13/17] selftests: forwarding: tc_tunnel_key: Make filters more specific Ido Schimmel
2023-08-02  8:30   ` Davide Caratti
2023-08-02  8:37     ` Ido Schimmel
2023-08-02  8:52       ` Davide Caratti
2023-08-02  7:51 ` [PATCH net 14/17] selftests: forwarding: tc_flower_l2_miss: Fix failing test with old libnet Ido Schimmel
2023-08-02  7:51 ` [PATCH net 15/17] selftests: forwarding: bridge_mdb: " Ido Schimmel
2023-08-02  7:51 ` [PATCH net 16/17] selftests: forwarding: bridge_mdb_max: " Ido Schimmel
2023-08-02  7:51 ` [PATCH net 17/17] selftests: forwarding: bridge_mdb: Make test more robust Ido Schimmel

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=87fs51eig3.fsf@nvidia.com \
    --to=petrm@nvidia.com \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=idosch@nvidia.com \
    --cc=kuba@kernel.org \
    --cc=mirsad.todorovac@alu.unizg.hr \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=razor@blackwall.org \
    --cc=vladimir.oltean@nxp.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.