selftests: forwarding: mirror_gre_changes: Fix waiting for neighbor
authorPetr Machata <petrm@mellanox.com>
Thu, 28 Jun 2018 16:56:39 +0000 (18:56 +0200)
committerDavid S. Miller <davem@davemloft.net>
Sat, 30 Jun 2018 11:34:09 +0000 (20:34 +0900)
When running the test on soft devices, there's no mechanism to
gratuitously start resolving the neighbor for remote tunnel endpoint.
So instead of passively waiting, wait for the device to be up, and then
probe the neighbor with a ping.

Signed-off-by: Petr Machata <petrm@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
tools/testing/selftests/net/forwarding/mirror_gre_changes.sh

index aa29d46186a837d53fa8fb76fa4b0161563417e0..135902aa8b11498bfbf99428a77084b4ee3de7fd 100755 (executable)
@@ -122,15 +122,8 @@ test_span_gre_egress_up()
        # After setting the device up, wait for neighbor to get resolved so that
        # we can expect mirroring to work.
        ip link set dev $swp3 up
-       while true; do
-               ip neigh sh dev $swp3 $remote_ip nud reachable |
-                   grep -q ^
-               if [[ $? -ne 0 ]]; then
-                       sleep 1
-               else
-                       break
-               fi
-       done
+       setup_wait_dev $swp3
+       ping -c 1 -I $swp3 $remote_ip &>/dev/null
 
        quick_test_span_gre_dir $tundev ingress
        mirror_uninstall $swp1 ingress