linux-xiaomi-chiron/tools/testing/vsock
Stefan Hajnoczi cdbcc18de1 VSOCK: add AF_VSOCK test cases
The vsock_test.c program runs a test suite of AF_VSOCK test cases.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Stefano Garzarella <sgarzare@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-12-20 21:09:21 -08:00
..
.gitignore VSOCK: add AF_VSOCK test cases 2019-12-20 21:09:21 -08:00
control.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 2019-06-05 17:37:17 +02:00
control.h VSOCK: add SPDX identifiers to vsock tests 2019-12-20 21:09:21 -08:00
Makefile VSOCK: add AF_VSOCK test cases 2019-12-20 21:09:21 -08:00
README VSOCK: add AF_VSOCK test cases 2019-12-20 21:09:21 -08:00
timeout.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 441 2019-06-05 17:37:17 +02:00
timeout.h VSOCK: add SPDX identifiers to vsock tests 2019-12-20 21:09:21 -08:00
util.c VSOCK: add send_byte()/recv_byte() test utilities 2019-12-20 21:09:21 -08:00
util.h VSOCK: add send_byte()/recv_byte() test utilities 2019-12-20 21:09:21 -08:00
vsock_diag_test.c VSOCK: extract connect/accept functions from vsock_diag_test.c 2019-12-20 21:09:21 -08:00
vsock_test.c VSOCK: add AF_VSOCK test cases 2019-12-20 21:09:21 -08:00

AF_VSOCK test suite
-------------------
These tests exercise net/vmw_vsock/ host<->guest sockets for VMware, KVM, and
Hyper-V.

The following tests are available:

  * vsock_test - core AF_VSOCK socket functionality
  * vsock_diag_test - vsock_diag.ko module for listing open sockets

The following prerequisite steps are not automated and must be performed prior
to running tests:

1. Build the kernel, make headers_install, and build these tests.
2. Install the kernel and tests on the host.
3. Install the kernel and tests inside the guest.
4. Boot the guest and ensure that the AF_VSOCK transport is enabled.

Invoke test binaries in both directions as follows:

  # host=server, guest=client
  (host)# $TEST_BINARY --mode=server \
                       --control-port=1234 \
                       --peer-cid=3
  (guest)# $TEST_BINARY --mode=client \
                        --control-host=$HOST_IP \
                        --control-port=1234 \
                        --peer-cid=2

  # host=client, guest=server
  (guest)# $TEST_BINARY --mode=server \
                        --control-port=1234 \
                        --peer-cid=2
  (host)# $TEST_BINARY --mode=client \
                       --control-port=$GUEST_IP \
                       --control-port=1234 \
                       --peer-cid=3