kumquat-buildroot/package/rdma-core/readme.txt
Julien Olivain ea47e177f0 package/rdma-core: new package
This is the userspace components for the Linux Kernel's
drivers/infiniband subsystem.

https://github.com/linux-rdma/rdma-core

Tested-by: Shamraiz Ashraf <shamraizashraf092@gmail.com>
Signed-off-by: Julien Olivain <ju.o@free.fr>
[yann.morin.1998@free.fr:
  - select iproute2 as it provides the 'rdma' utility
]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
2023-02-05 13:51:13 +01:00

76 lines
1.8 KiB
Plaintext

Testing rdma-core userspace tools
=================================
Testing rdma-core using Linux software RoCE implementation:
https://en.wikipedia.org/wiki/RDMA_over_Converged_Ethernet
Using two systems with working TCP/IP configuration, for example:
- Server IP: 192.168.123.10
- Client IP: 192.168.123.20
Make sure firewall configurations are appropriate. Routable RoCE v2
uses udp/4791. ibv_rc_pingpong uses tcp/18515 for initial
synchronization.
Note: this test can be executed in two qemu virtual machines with
bridged networking.
Kernel configuration
--------------------
The Linux Kernel needs some InfiniBand configuration. In this example
the kernel "rdma_rxe" driver is needed (CONFIG_RDMA_RXE=y). The Kernel
config fragment file used for package test can be used as a starting
point. See:
support/testing/tests/package/test_rdma_core/linux-rdma.fragment
Buildroot package configuration
-------------------------------
For setting up a software RoCE link, the "rdma" program is needed. It
is provided by the "iproute2" package, when "libmnl" is also
selected. Make sure to have in your Buildroot configuration:
BR2_PACKAGE_IPROUTE2=y
BR2_PACKAGE_LIBMNL=y
BR2_PACKAGE_RDMA_CORE=y
Setting up the rdma link
------------------------
On both server and client:
modprobe rdma_rxe
rdma link add rxe0 type rxe netdev eth0
Testing with rping
------------------
On the server side, run the command:
rping -s -v
On the client side, run the command:
rping -c -v -a 192.168.123.10
Testing with ibv_rc_pingpong
----------------------------
To test with the pingpong example using the reliable connected (RC)
transport:
On the server side, run the command:
ibv_rc_pingpong -d rxe0 -g 1
On the client side, run the command:
ibv_rc_pingpong -d rxe0 -g 1 192.168.123.10