selftests: forwarding: introduce helper for standard ethtool counters
authorVladimir Oltean <vladimir.oltean@nxp.com>
Tue, 18 Apr 2023 11:14:58 +0000 (14:14 +0300)
committerJakub Kicinski <kuba@kernel.org>
Fri, 21 Apr 2023 03:03:21 +0000 (20:03 -0700)
Counters for the MAC Merge layer and preemptible MAC have standardized
so far on using structured ethtool stats as opposed to the driver
specific names and meanings.

Benefit from that rare opportunity and introduce a helper to lib.sh for
querying standardized counters, in the hope that these will take off for
other uses as well.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/net/forwarding/lib.sh

index efd48e1..36e47c9 100755 (executable)
@@ -787,6 +787,17 @@ ethtool_stats_get()
        ethtool -S $dev | grep "^ *$stat:" | head -n 1 | cut -d: -f2
 }
 
+ethtool_std_stats_get()
+{
+       local dev=$1; shift
+       local grp=$1; shift
+       local name=$1; shift
+       local src=$1; shift
+
+       ethtool --json -S $dev --groups $grp -- --src $src | \
+               jq '.[]."'"$grp"'"."'$name'"'
+}
+
 qdisc_stats_get()
 {
        local dev=$1; shift