Thread (8 messages) 8 messages, 3 authors, 2026-03-06

Re: [PATCH net-next v1 0/2] selftests: rds: refactor and expand rds selftests test

From: Allison Henderson <hidden>
Date: 2026-03-06 07:44:08
Also in: linux-kselftest, linux-rdma

On Wed, 2026-03-04 at 10:32 -0800, Jakub Kicinski wrote:
On Wed, 4 Mar 2026 02:50:34 +0000 Allison Henderson wrote:
quoted
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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help