xref: /linux/tools/testing/selftests/net/forwarding/sch_ets.sh (revision 63467137ecc0ff6f804d53903ad87a2f0397a18b)
1#!/bin/bash
2# SPDX-License-Identifier: GPL-2.0
3
4# A driver for the ETS selftest that implements testing in slowpath.
5lib_dir=.
6source sch_ets_core.sh
7
8ALL_TESTS="
9	ping_ipv4
10	priomap_mode
11	ets_test_strict
12	ets_test_mixed
13	ets_test_dwrr
14	ets_test_plug
15	classifier_mode
16	ets_test_strict
17	ets_test_mixed
18	ets_test_dwrr
19"
20
21switch_create()
22{
23	ets_switch_create
24
25	# Create a bottleneck so that the DWRR process can kick in.
26	tc qdisc add dev $swp2 root handle 1: tbf \
27	   rate 1Gbit burst 1Mbit latency 100ms
28	defer tc qdisc del dev $swp2 root
29	PARENT="parent 1:"
30}
31
32# Callback from sch_ets_tests.sh
33collect_stats()
34{
35	local -a streams=("$@")
36	local stream
37
38	for stream in ${streams[@]}; do
39		qdisc_parent_stats_get $swp2 10:$((stream + 1)) .bytes
40	done
41}
42
43ets_run
44