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

testing: selftests: tc_common: Add tc_check_at_least_x_packets()

Add function that checks that at least X packets hit the tc rule.
There are cases that it is not possible to catch only the interesting
packets, so then, it is possible to send many packets and verify that at
least this amount of packets hit the rule.

This function will be used in the next patch for general tc rule that
can be used to test both software and hardware.

Signed-off-by: Amit Cohen <amcohen@nvidia.com>
Reviewed-by: Petr Machata <petrm@nvidia.com>
Signed-off-by: Ido Schimmel <idosch@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>

authored by

Amit Cohen and committed by
David S. Miller
c08d2272 45d45e53

+10
+10
tools/testing/selftests/net/forwarding/tc_common.sh
··· 16 16 tc_rule_handle_stats_get "$id" "$handle" > /dev/null 17 17 } 18 18 19 + tc_check_at_least_x_packets() 20 + { 21 + local id=$1 22 + local handle=$2 23 + local count=$3 24 + 25 + busywait "$TC_HIT_TIMEOUT" until_counter_is ">= $count" \ 26 + tc_rule_handle_stats_get "$id" "$handle" > /dev/null 27 + } 28 + 19 29 tc_check_packets_hitting() 20 30 { 21 31 local id=$1