selftests: forwarding: hw_stats_l3: Detect failure to install counters
authorPetr Machata <petrm@nvidia.com>
Wed, 5 Apr 2023 14:25:12 +0000 (16:25 +0200)
committerJakub Kicinski <kuba@kernel.org>
Fri, 7 Apr 2023 02:06:17 +0000 (19:06 -0700)
commita9fda7a0b0331250c4af006f1862752dbefcab9c
tree458b3e62e221ae794c8093578f17f364231eb433
parentf8b648bf6628eb0a6c25be68e512bed6df2e5f24
selftests: forwarding: hw_stats_l3: Detect failure to install counters

Running this test makes little sense if the enabled l3_stats are not
actually reported as "used". This can signify a failure of a driver to
install the necessary counters, or simply lack of support for enabling
in-HW counters on a given netdevice. It is generally impossible to tell
from the outside which it is. But more likely than not, if somebody is
running this on veth pairs, they do not intend to actually test that a
certain piece of HW can install in-HW counters for the veth. It is more
likely they are e.g. running the test by mistake.

Therefore detect that the counter has not been actually installed. In that
case, if the netdevice is one end of a veth pair, SKIP. Otherwise FAIL.

Suggested-by: Hangbin Liu <liuhangbin@gmail.com>
Signed-off-by: Petr Machata <petrm@nvidia.com>
Reviewed-by: Danielle Ratson <danieller@nvidia.com>
Tested-by: Hangbin Liu <liuhangbin@gmail.com>
Link: https://lore.kernel.org/r/a86817961903cca5cb0aebf2b2a06294b8aa7dea.1680704172.git.petrm@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/net/forwarding/hw_stats_l3.sh