On 07.10.2021 04:17, David Ahern wrote:
On 10/6/21 3:26 PM, Leonard Crestez wrote:
On 06.10.2021 18:01, David Ahern wrote:
On 10/6/21 5:47 AM, Leonard Crestez wrote:
Reduce default client timeout from 5 seconds to 500 miliseconds.
Can be overridden from environment by exporting NETTEST_CLIENT_TIMEOUT=5
Some tests need ICMP timeouts so pass an explicit -t5 for those.
Signed-off-by: Leonard Crestez <cdleonard@xxxxxxxxx>
---
tools/testing/selftests/net/fcnal-test.sh | 17 +++++++++++------
1 file changed, 11 insertions(+), 6 deletions(-)
The problem with blindly reducing the timeouts is running the script on
a loaded server. Some tests are expected to timeout while for tests a
timeout is a failure.
Keeping the default value "5" would be fine as long as it is possible to
override externally and get fast results on a mostly-idle machine.
5 is the default for nettest.c; the test script passes in -t1 for all tests.
An explicit -t is only passed for some of the tests
$ grep -c nettest.*-r tools/testing/selftests/net/fcnal-test.sh
243
$ grep -c nettest.*-t tools/testing/selftests/net/fcnal-test.sh
15
Placing a default value in the environment which is overriden by certain
tests achieves that.
In theory it would also be possible for fcnal-test.sh to parse as
"--timeout" option and pass it into every single test but that solution
would cause much more code churn.
Having default values in environment variables that can still be
overridden by command-line arguments is a common pattern in many tools.
It also avoids having to pass-through every flag through every
intermediate wrapper.
I do not agree with env variables here.
Would you agree with adding an option to fcnal-test.sh which decreases
timeouts passed to nettest client calls?