selftests: forwarding: devlink_lib: Allow tests to define devlink device
authorIdo Schimmel <idosch@mellanox.com>
Sat, 17 Aug 2019 13:28:22 +0000 (16:28 +0300)
committerDavid S. Miller <davem@davemloft.net>
Sat, 17 Aug 2019 19:40:09 +0000 (12:40 -0700)
For tests that create their network interfaces dynamically or do not use
interfaces at all (as with netdevsim) it is useful to define their own
devlink device instead of deriving it from the first network interface.

Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
tools/testing/selftests/net/forwarding/devlink_lib.sh

index 8553a67..2b9296f 100644 (file)
@@ -4,19 +4,21 @@
 ##############################################################################
 # Defines
 
-DEVLINK_DEV=$(devlink port show "${NETIFS[p1]}" -j \
-                    | jq -r '.port | keys[]' | cut -d/ -f-2)
-if [ -z "$DEVLINK_DEV" ]; then
-       echo "SKIP: ${NETIFS[p1]} has no devlink device registered for it"
-       exit 1
-fi
-if [[ "$(echo $DEVLINK_DEV | grep -c pci)" -eq 0 ]]; then
-       echo "SKIP: devlink device's bus is not PCI"
-       exit 1
-fi
+if [[ ! -v DEVLINK_DEV ]]; then
+       DEVLINK_DEV=$(devlink port show "${NETIFS[p1]}" -j \
+                            | jq -r '.port | keys[]' | cut -d/ -f-2)
+       if [ -z "$DEVLINK_DEV" ]; then
+               echo "SKIP: ${NETIFS[p1]} has no devlink device registered for it"
+               exit 1
+       fi
+       if [[ "$(echo $DEVLINK_DEV | grep -c pci)" -eq 0 ]]; then
+               echo "SKIP: devlink device's bus is not PCI"
+               exit 1
+       fi
 
-DEVLINK_VIDDID=$(lspci -s $(echo $DEVLINK_DEV | cut -d"/" -f2) \
-                -n | cut -d" " -f3)
+       DEVLINK_VIDDID=$(lspci -s $(echo $DEVLINK_DEV | cut -d"/" -f2) \
+                        -n | cut -d" " -f3)
+fi
 
 ##############################################################################
 # Sanity checks