From: Yuval Mintz <yuv...@mellanox.com>

IPv4 routes in Spectrum are based on the kvd single-hash, but as it's
a hash we need to assume we cannot reach 100% of its capacity.

Add a wrapper that provides us with good/bad target numbers for the
Spectrum ASIC.

Signed-off-by: Yuval Mintz <yuv...@mellanox.com>
Reviewed-by: Petr Machata <pe...@mellanox.com>
[pe...@mellanox.com: Drop shebang.]
Signed-off-by: Petr Machata <pe...@mellanox.com>
---
 .../drivers/net/mlxsw/spectrum/router_scale.sh         | 18 ++++++++++++++++++
 1 file changed, 18 insertions(+)
 create mode 100644 
tools/testing/selftests/drivers/net/mlxsw/spectrum/router_scale.sh

diff --git a/tools/testing/selftests/drivers/net/mlxsw/spectrum/router_scale.sh 
b/tools/testing/selftests/drivers/net/mlxsw/spectrum/router_scale.sh
new file mode 100644
index 000000000000..21c4697d5bab
--- /dev/null
+++ b/tools/testing/selftests/drivers/net/mlxsw/spectrum/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 hash_single)
+
+       if [[ $should_fail -eq 0 ]]; then
+               target=$((target * 85 / 100))
+       else
+               target=$((target + 1))
+       fi
+
+       echo $target
+}
-- 
2.4.11

Reply via email to