Blob Blame History Raw
From: Danielle Ratson <danieller@mellanox.com>
Date: Mon, 18 Nov 2019 09:49:58 +0200
Subject: selftests: mlxsw: Add router scale test for Spectrum-2
Patch-mainline: v5.5-rc1
Git-commit: 0fed96fa8342a14de7715fe37ae35cb5775bdced
References: bsc#1176774

Same as for Spectrum-1, test the ability to add the maximum number of
routes possible to the switch.

Invoke the test from the 'resource_scale' wrapper script.

Signed-off-by: Danielle Ratson <danieller@mellanox.com>
Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Acked-by: Thomas Bogendoerfer <tbogendoerfer@suse.de>
---
 tools/testing/selftests/drivers/net/mlxsw/spectrum-2/resource_scale.sh |    5 ++
 tools/testing/selftests/drivers/net/mlxsw/spectrum-2/router_scale.sh   |   18 ++++++++++
 2 files changed, 22 insertions(+), 1 deletion(-)
 create mode 100644 tools/testing/selftests/drivers/net/mlxsw/spectrum-2/router_scale.sh

--- a/tools/testing/selftests/drivers/net/mlxsw/spectrum-2/resource_scale.sh
+++ b/tools/testing/selftests/drivers/net/mlxsw/spectrum-2/resource_scale.sh
@@ -16,11 +16,13 @@ cleanup()
 	if [ ! -z $current_test ]; then
 		${current_test}_cleanup
 	fi
+	# Need to reload in order to avoid router abort.
+	devlink_reload
 }
 
 trap cleanup EXIT
 
-ALL_TESTS="tc_flower mirror_gre"
+ALL_TESTS="router tc_flower mirror_gre"
 for current_test in ${TESTS:-$ALL_TESTS}; do
 	source ${current_test}_scale.sh
 
@@ -34,6 +36,7 @@ for current_test in ${TESTS:-$ALL_TESTS}
 		setup_wait $num_netifs
 		${current_test}_test "$target" "$should_fail"
 		${current_test}_cleanup
+		devlink_reload
 		if [[ "$should_fail" -eq 0 ]]; then
 			log_test "'$current_test' $target"
 		else
--- /dev/null
+++ b/tools/testing/selftests/drivers/net/mlxsw/spectrum-2/router_scale.sh
@@ -0,0 +1,18 @@
+# SPDX-License-Identifier: GPL-2.0
+source ../router_scale.sh
+
+router_get_target()
+{
+	local should_fail=$1
+	local target
+
+	target=$(devlink_resource_size_get kvd)
+
+	if [[ $should_fail -eq 0 ]]; then
+		target=$((target * 85 / 100))
+	else
+		target=$((target + 1))
+	fi
+
+	echo $target
+}