^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 1) AF_VSOCK test suite
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 2) -------------------
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 3) These tests exercise net/vmw_vsock/ host<->guest sockets for VMware, KVM, and
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 4) Hyper-V.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 5)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 6) The following tests are available:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 7)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 8) * vsock_test - core AF_VSOCK socket functionality
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 9) * vsock_diag_test - vsock_diag.ko module for listing open sockets
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 10)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 11) The following prerequisite steps are not automated and must be performed prior
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 12) to running tests:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 13)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 14) 1. Build the kernel, make headers_install, and build these tests.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 15) 2. Install the kernel and tests on the host.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 16) 3. Install the kernel and tests inside the guest.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 17) 4. Boot the guest and ensure that the AF_VSOCK transport is enabled.
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 18)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 19) Invoke test binaries in both directions as follows:
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 20)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 21) # host=server, guest=client
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 22) (host)# $TEST_BINARY --mode=server \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 23) --control-port=1234 \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 24) --peer-cid=3
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 25) (guest)# $TEST_BINARY --mode=client \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 26) --control-host=$HOST_IP \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 27) --control-port=1234 \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 28) --peer-cid=2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 29)
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 30) # host=client, guest=server
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 31) (guest)# $TEST_BINARY --mode=server \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 32) --control-port=1234 \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 33) --peer-cid=2
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 34) (host)# $TEST_BINARY --mode=client \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 35) --control-port=$GUEST_IP \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 36) --control-port=1234 \
^8f3ce5b39 (kx 2023-10-28 12:00:06 +0300 37) --peer-cid=3