Jakub Kicinski wrote: > Hi! > > Implement support for tests which require access to a remote system / > endpoint which can generate traffic. > This series concludes the "groundwork" for upstream driver tests. > > I wanted to support the three models which came up in discussions: > - SW testing with netdevsim > - "local" testing with two ports on the same system in a loopback > - "remote" testing via SSH > so there is a tiny bit of an abstraction which wraps up how "remote" > commands are executed. Otherwise hopefully there's nothing surprising. > > I'm only adding a ping test. I had a bigger one written but I was > worried we'll get into discussing the details of the test itself > and how I chose to hack up netdevsim, instead of the test infra... > So that test will be a follow up :) > > v5: > - fix rand port generation, and wrap it in a helper in case > the random thing proves to be flaky > - reuseaddr > - explicitly select the address family > v4: https://lore.kernel.org/all/20240418233844.2762396-1-kuba@xxxxxxxxxx > - improve coding style of patch 5 > - switch from netcat to socat (patch 6) > - support exit_wait for bkg() in context manager > - add require_XYZ() helpers (patch 7) > - increase timeouts a little (1,3 -> 5 sec) > v3: https://lore.kernel.org/all/20240417231146.2435572-1-kuba@xxxxxxxxxx > - first two patches are new > - make Remote::cmd() return Popen() object (patch 3) > - always operate on absolute paths (patch 3) > - last two patches are new > v2: https://lore.kernel.org/all/20240416004556.1618804-1-kuba@xxxxxxxxxx > - rename endpoint -> remote > - use 2001:db8:: v6 prefix > - add a note about persistent SSH connections > - add the kernel config > v1: https://lore.kernel.org/all/20240412233705.1066444-1-kuba@xxxxxxxxxx > > Jakub Kicinski (7): > selftests: drv-net: define endpoint structures > selftests: drv-net: factor out parsing of the env > selftests: drv-net: construct environment for running tests which > require an endpoint > selftests: drv-net: add a trivial ping test > selftests: net: support matching cases by name prefix > selftests: drv-net: add a TCP ping test case (and useful helpers) > selftests: drv-net: add require_XYZ() helpers for validating env Reviewed-by: Willem de Bruijn <willemb@xxxxxxxxxx>