Currently the rds selftests only tests the tcp transport. This means most of rds_rdma.ko has no testing coverage. This series refactors the rds self tests to add an rdma option when running tests. When used, the test creates a pair of ROCE interfaces to run the payloads through.
Most of this set is refactoring the existing test.py module. Since most of this code is one long procedure, it is difficult to modularize it without creating a lot of pylint complaints about lengthy functions with too many variables or branches. The first seven patches address this by breaking down test.py into helper functions. After we have modularized the send/recv packet logic, we introduce the new ROCE equivalent network configurations, add the new command line flags to build and run the test with rdma support. Questions, comments and feedback appreciated! Thanks everyone! Allison Allison Henderson (9): selftests: rds: Capitalize ret global in test.py selftests: rds: Add helper function setup_tcp() in test.py selftests: rds: Add helper function check_info() in test.py selftests: rds: Add helper function send_burst() in test.py selftests: rds: Add helper function recv_burst() in test.py selftests: rds: Add helper function verify_hashes() in test.py selftests: rds: Add helper function snd_rcv_packets() in test.py selftests: rds: Add ROCE support to test.py selftests: rds: Add ROCE support to run.sh tools/testing/selftests/net/rds/config.sh | 15 +- tools/testing/selftests/net/rds/run.sh | 51 +- tools/testing/selftests/net/rds/test.py | 555 ++++++++++++++-------- 3 files changed, 424 insertions(+), 197 deletions(-) -- 2.25.1
