On Wed, 2026-03-04 at 10:32 -0800, Jakub Kicinski wrote:
> On Wed, 4 Mar 2026 02:50:34 +0000 Allison Henderson wrote:
> > I didnt know it was causing you grief, but I am happy to work with
> > you to adapt it.  RDS is a little unique in that the network topology
> > defines the underlying transport it uses.  If you were to run it with
> > just a pair of veth interfaces on a single host or vm, then you will
> > only be using the loop back transport in rds.ko.  In order to get it
> > to load and test rds_tcp.ko, we need the endpoints to be in separate
> > network namespaces so that the destination IP isn't seen as local. So
> > the test case does this by forking server/client processes across
> > name spaces.  There really isnt a rush on this series, so if you
> > think we should do some refactoring/cleanup for ksft first that is
> > fine.  Let me know your thoughts.
> 
> IIUC the need to set up a veth + 2 name spaces topology is very common.
> We have bash "libraries" / helpers in various lib.sh files to do it.
> Python libs also have some support (tho the default linking there is
> by pairing two netdevsim devices).
> 
> Well, maybe to be clear I should say that we _even_ have support in
> libraries for this. Not really strongly opposed to you rolling your own
> way of setting up the namespaces at this point. I primarily care about
> us being able to execute all your tests in our CI, with standard ksft
> commands. Maybe I did something wrong but
> 
>  make -C tools/testing/selftests TARGETS=net/rds run_tests
> 
> did not work for me.

Sure, lets get this fixed first then.  Usually when I run the test, I just run 
the one rds test directly like this:

vng --build  --config .config; vng -v --rwdir ./ --run . --user root --cpus 16 
-- "export
PYTHONPATH=tools/testing/selftests/net/; 
tools/testing/selftests/net/rds/run.sh" 2>&1 | tee outfile.txt;

I believe the way you run it would have it run directly on the host though.  
Which can work but it would have to be
built and configured correctly for rds. Also I think when run it through make 
run_tests, ksft may have other lib
includes that get inherited by the child processes which can affect how they 
run.  But I'd like to see your output to
confirm. Could you include the output you are seeing?  Then I'll see if I can 
recreate and address what you're seeing on
my end. 

Thank you!
Allison

Reply via email to