selftests: loopback.sh: skip this test if the driver does not support
authorHangbin Liu <liuhangbin@gmail.com>
Fri, 3 Jan 2020 07:41:24 +0000 (15:41 +0800)
committerDavid S. Miller <davem@davemloft.net>
Fri, 3 Jan 2020 20:23:34 +0000 (12:23 -0800)
The loopback feature is only supported on a few drivers like broadcom,
mellanox, etc. The default veth driver has not supported it yet. To avoid
returning failed and making the runner feel confused, let's just skip
the test on drivers that not support loopback.

Fixes: ad11340994d5 ("selftests: Add loopback test")
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Reviewed-by: Simon Horman <simon.horman@netronome.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
tools/testing/selftests/net/forwarding/loopback.sh

index 6e4626ae71b0caf2d8ec6d3c3bfb02f5892fa69b..8f4057310b5b41a2c6b6bf52c448efdfaa4391e5 100755 (executable)
@@ -1,6 +1,9 @@
 #!/bin/bash
 # SPDX-License-Identifier: GPL-2.0
 
+# Kselftest framework requirement - SKIP code is 4.
+ksft_skip=4
+
 ALL_TESTS="loopback_test"
 NUM_NETIFS=2
 source tc_common.sh
@@ -72,6 +75,11 @@ setup_prepare()
 
        h1_create
        h2_create
+
+       if ethtool -k $h1 | grep loopback | grep -q fixed; then
+               log_test "SKIP: dev $h1 does not support loopback feature"
+               exit $ksft_skip
+       fi
 }
 
 cleanup()