On Fri, Nov 28, 2025 at 2:27 PM Alexis Lothoré (eBPF Foundation) alexis.lothore@bootlin.com wrote:
Hello, this is a (late) v2 to my first attempt to convert the test_tc_edt script to test_progs. This new version is way simpler, thanks to Martin's suggestion about properly using the existing network_helpers rather than reinventing the wheel. It also fixes a small bug in the measured effective rate.
The converted test roughly follows the original script logic, with two veths in two namespaces, a TCP connection between a client and a server, and the client pushing a specific amount of data. Time is recorded before and after the transmission to compute the effective rate.
There are two knobs driving the robustness of the test in CI:
- the amount of pushed data (the higher, the more precise is the effective rate)
- the tolerated error margin
The original test was configured with a 20s duration and a 1% error margin. The new test is configured with 1MB of data being pushed and a 2% error margin, to:
- make the duration tolerable in CI
- while keeping enough margin for rate measure fluctuations depending on the CI machines load
Applied, but it's still a bit flaky in my setup. Fails like this from time to time when run in parallel with other tests: run_test:FAIL:rate error is lower than threshold unexpected rate error is lower than threshold: actual 6 > expected 2 #450 tc_edt:FAIL