tools/testing/selftests/net/rds/README.txt
Source file repositories/reference/linux-study-clean/tools/testing/selftests/net/rds/README.txt
File Facts
- System
- Linux kernel
- Corpus path
tools/testing/selftests/net/rds/README.txt- Extension
.txt- Size
- 2859 bytes
- Lines
- 78
- Domain
- Support Tooling And Documentation
- Bucket
- tools
- Inferred role
- Support Tooling And Documentation: documentation
- Status
- atlas-only
Why This File Exists
Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
- Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
RDS self-tests
==============
These scripts provide a coverage test for RDS-TCP and RDS-RDMA (over
RoCE/RXE) by setting up two endpoints and running RDS packets between
them. The TCP path creates two network namespaces; the RDMA path uses
an RXE (soft RoCE) device backed by a veth pair. A workload of 50000
hashes, each 64 characters in size, is passed over an RDS socket on
this test network with an optional probability of packet loss or
corruption. A passing test means the RDS stack was able to recover
properly. The provided config.sh can be used to compile the kernel
with the necessary gcov options; pass -r to also enable the kernel
configs required for the RDMA transport. The kernel may optionally be
configured to omit the coverage report as well.
USAGE:
rds_run.sh [-d logdir] [-l packet_loss] [-c packet_corruption]
[-u packet_duplicate] [-t timeout]
[-T tcp|rdma|tcp,rdma]
OPTIONS:
-d Log directory. If set, logs will be stored in the
given dir, or skipped if unset. Log dir can also be
set through the RDS_LOG_DIR env variable
-l Simulates a percentage of packet loss
-c Simulates a percentage of packet corruption
-u Simulates a percentage of packet duplication.
-t Test timeout. Defaults to tools/testing/selftests/net/rds/settings
-T Comma-separated list of transports to test. Accepts
"tcp", "rdma", or "tcp,rdma". Defaults to "tcp". Use
config.sh -r to enable required RDMA configs
ENV VARIABLES:
RDS_LOG_DIR Log directory. If set, logs will be stored in
the given dir, or skipped if unset. Log dir
can also be set with the -d flag.
Use with --rwdir on the CI path to retain logs after
test compleation. Log dir end point must be within
the specified --rwdir path for logs to persist on
the host.
SUDO_USER The user name that should be used for tcpdump
--relinquish-privileges. Set this to a user
belonging to the sudoers group to avoid drop
privilege errors with the vng 9p filesystem
which may result in empty pcaps
EXAMPLE:
# Create a suitable gcov enabled .config
tools/testing/selftests/net/rds/config.sh -g
# Optionally add RDMA configs (CONFIG_RDS_RDMA, CONFIG_RDMA_RXE)
tools/testing/selftests/net/rds/config.sh -r
# Alternatly create a gcov disabled .config
tools/testing/selftests/net/rds/config.sh
# Config paths may also be specified with the -c flag
tools/testing/selftests/net/rds/config.sh -c .config.local
# build the kernel
vng --build --config .config
Annotation
- Atlas domain: Support Tooling And Documentation / tools.
- Implementation status: atlas-only.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.