Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

selftests: forwarding: skip if kernel not support setting bridge fdb learning limit

If the testing kernel doesn't support setting fdb_max_learned or show
fdb_n_learned, just skip it. Or we will get errors like

./bridge_fdb_learning_limit.sh: line 218: [: null: integer expression expected
./bridge_fdb_learning_limit.sh: line 225: [: null: integer expression expected

Fixes: 6f84090333bb ("selftests: forwarding: bridge_fdb_learning_limit: Add a new selftest")
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Acked-by: Nikolay Aleksandrov <razor@blackwall.org>
Reviewed-by: Johannes Nixdorf <jnixdorf-oss@avm.de>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Hangbin Liu and committed by
David S. Miller
863ff546 fa96c6ba

+18
+18
tools/testing/selftests/net/forwarding/bridge_fdb_learning_limit.sh
··· 178 178 check_err $? "Failed to remove a FDB entry of type ${type}" 179 179 } 180 180 181 + check_fdb_n_learned_support() 182 + { 183 + if ! ip link help bridge 2>&1 | grep -q "fdb_max_learned"; then 184 + echo "SKIP: iproute2 too old, missing bridge max learned support" 185 + exit $ksft_skip 186 + fi 187 + 188 + ip link add dev br0 type bridge 189 + local learned=$(fdb_get_n_learned) 190 + ip link del dev br0 191 + if [ "$learned" == "null" ]; then 192 + echo "SKIP: kernel too old; bridge fdb_n_learned feature not supported." 193 + exit $ksft_skip 194 + fi 195 + } 196 + 181 197 check_accounting_one_type() 182 198 { 183 199 local type=$1 is_counted=$2 overrides_learned=$3 ··· 289 273 check_limit_one_type $type_args 290 274 done 291 275 } 276 + 277 + check_fdb_n_learned_support 292 278 293 279 trap cleanup EXIT 294 280