tools/testing/selftests/drivers/net/mlxsw/tc_flower_scale.sh

Source file repositories/reference/linux-study-clean/tools/testing/selftests/drivers/net/mlxsw/tc_flower_scale.sh

File Facts

System
Linux kernel
Corpus path
tools/testing/selftests/drivers/net/mlxsw/tc_flower_scale.sh
Extension
.sh
Size
2879 bytes
Lines
141
Domain
Support Tooling And Documentation
Bucket
tools
Inferred role
Support Tooling And Documentation: tools
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

#!/bin/bash
# SPDX-License-Identifier: GPL-2.0

# Test for resource limit of offloaded flower rules. The test adds a given
# number of flower matches for different IPv6 addresses, then check the offload
# indication for all of the tc flower rules. This file contains functions to set
# up a testing topology and run the test, and is meant to be sourced from a test
# script that calls the testing routine with a given number of rules.

TC_FLOWER_NUM_NETIFS=2

tc_flower_h1_create()
{
	simple_if_init $h1
	tc qdisc add dev $h1 clsact
}

tc_flower_h1_destroy()
{
	tc qdisc del dev $h1 clsact
	simple_if_fini $h1
}

tc_flower_h2_create()
{
	simple_if_init $h2
	tc qdisc add dev $h2 clsact
}

tc_flower_h2_destroy()
{
	tc qdisc del dev $h2 clsact
	simple_if_fini $h2
}

tc_flower_setup_prepare()
{
	h1=${NETIFS[p1]}
	h2=${NETIFS[p2]}

	vrf_prepare

	tc_flower_h1_create
	tc_flower_h2_create
}

tc_flower_cleanup()
{
	pre_cleanup

	tc_flower_h2_destroy
	tc_flower_h1_destroy

	vrf_cleanup

	if [[ -v TC_FLOWER_BATCH_FILE ]]; then
		rm -f $TC_FLOWER_BATCH_FILE
	fi
}

tc_flower_addr()
{
	local num=$1; shift

	printf "2001:db8:1::%x" $num
}

tc_flower_rules_create()
{
	local count=$1; shift

Annotation

Implementation Notes