selftests: forwarding: Have lldpad_app_wait_set() wait for unknown, too
authorPetr Machata <petrm@mellanox.com>
Mon, 8 Oct 2018 18:50:41 +0000 (18:50 +0000)
committerDavid S. Miller <davem@davemloft.net>
Thu, 11 Oct 2018 05:22:07 +0000 (22:22 -0700)
Immediately after mlxsw module is probed and lldpad started, added APP
entries are briefly in "unknown" state before becoming "pending". That's
the state that lldpad_app_wait_set() typically sees, and since there are
no pending entries at that time, it bails out. However the entries have
not been pushed to the kernel yet at that point, and thus the test case
fails.

Fix by waiting for both unknown and pending entries to disappear before
proceeding.

Fixes: d159261f3662 ("selftests: mlxsw: Add test for trust-DSCP")
Signed-off-by: Petr Machata <petrm@mellanox.com>
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
tools/testing/selftests/net/forwarding/lib.sh

index 0e73698..85d2535 100644 (file)
@@ -251,7 +251,7 @@ lldpad_app_wait_set()
 {
        local dev=$1; shift
 
-       while lldptool -t -i $dev -V APP -c app | grep -q pending; do
+       while lldptool -t -i $dev -V APP -c app | grep -Eq "pending|unknown"; do
                echo "$dev: waiting for lldpad to push pending APP updates"
                sleep 5
        done