test/virtio: update test_plan.md

Change-Id: I4100883cac98603108c96db0ed3e3cdf2e0e4b57
Signed-off-by: Pawel Niedzwiecki <pawelx.niedzwiecki@intel.com>
Reviewed-on: https://review.gerrithub.io/395079
Reviewed-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com>
Reviewed-by: Karol Latecki <karol.latecki@intel.com>
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
This commit is contained in:
Pawel Niedzwiecki 2018-01-17 15:33:29 +01:00 committed by Jim Harris
parent ff12a9b540
commit 46b93de613

View File

@ -73,61 +73,41 @@
- checks that other devices in the same controller are unaffected by hot-attach - checks that other devices in the same controller are unaffected by hot-attach
and hot-detach operations and hot-detach operations
### Vhost initiator test #### virtio initiator tests
Testing vhost initiator with fio write, randwrite, rw and randrw with verificiation enabled. - virtio user mode: connect to vhost-scsi controller sockets directly on host
Tests include vhost-user (vhost initiator connecting to the socket on the same machine) - virtio pci mode: connect to virtual pci devices on guest virtual machine
and virtio-pci (virtio initiator in a VM connecting to the virtual PCI SCSI device created by the hypervisor) - 6 concurrent jobs are run simultaneously on 3 devices with 18 virtqueues
All tests are run in virtio-user mode. Tests 2-3, 5-9 are additionally run in virtio-pci mode.
#### Test Case 1 - vhost initiator test with malloc ##### Test configuration
1. Run vhost with one scsi controller and with one malloc bdev with 512 block size. - SPDK vhost application is used for testing
2. Prepare config for bdevio with virtio section. - FIO using spdk fio_plugin: rw, randrw, randwrite, write with verification enabled.
3. Run bdevio test application with config. - trim sequential and trim random then write on trimmed areas with verification enabled
4. Generate the fio config file given the list of all bdevs. only on unmap supporting devices
5. Run fio tests: iodepth=128, block_size=4k, rw, randwrite, write, randrw with verification. - FIO job configuration: iodepth=128, block size=4k, runtime=10s
6. Check if fio tests are successful. - all test cases run jobs in parallel on multiple bdevs
- 18 queues
#### Test Case 2 - vhost initiator test with nvme ##### vhost configuration
1. Run vhost with one scsi controller and with one nvme bdev with 512 block size. - scsi controller with 6 NVMe splits
2. Repeat steps 2-6 from test case 1. - scsi controller with malloc with 512 block size
- scsi controller with malloc with 4096 block size
#### Test Case 3 - vhost initiator test with lvol ##### Test case 1
1. Run vhost with one scsi controller and with one lvol bdev with 512 block size. - virtio user on host
2. Repeat steps 2-6 from test case 1 - perform FIO rw, randwrite, randrw, write, parallel jobs on all devices
#### Test Case 4 - vhost initiator test with malloc ##### Test case 2
1. Run vhost with one scsi controller and with one malloc bdev with 4096 block size. - virtio user on host
2. Repeat steps 2-6 from test case 1. - perform FIO trim, randtrim, rw, randwrite, randrw, write, - parallel jobs
then write on trimmed areas on unmap supporting devices
#### Test Case 5 - vhost initiator test with lvol ##### Test case 3
1. Run vhost with one scsi controller and with one lvol bdev with 4096 block size. - virtio pci on vm
2. Repeat steps 2-6 from test case 1 - same config as in TC#1
#### Test Case 6 - vhost initiator test with nvme disk (size larger than 4G) ##### Test case 4
1. Run vhost with one scsi controller and with one nvme bdev with 512 block size and disk size larger than 4G - virtio pci on vm
to test if we can read, write to device with fio offset set to 4G. - same config as in TC#2
2. Repeat steps 4-6 from test case 1.
#### Test Case 7 - vhost initiator test with multiqueue
1. Run vhost with one scsi controller (one malloc bdev and one nvme bdev).
2. Generate the fio config file given the list of all bdevs.
3. Run fio tests: iodepth=128, block_size=4k, rw, randread, randwrite, read, write, randrw with verify
4. Check if fio tests are successful.
#### Test Case 8 - vhost initator test with multiple socket
1. Run vhost with two scsi controllers, one with nvme bdev and one with malloc bdev.
2. Generate the fio config file given the list of all bdevs.
3. Run fio tests: iodepth=128, block_size=4k, write with verification.
4. Check if fio tests are successful.
#### Test Case 9 - vhost initiator test with unmap
1. Run vhost with one controller and one nvme bdev with 512 block size.
2. Run fio test with sequential jobs: trim, randtrim, write.
All this jobs run with verification enabled.
Use trim_verify_zero fio option to check if blocks are returned as zeroes.
Write with verify after trim to check if we still can write and read from device.
3. Check if fio test ends with success.
4. Repeat steps 1-3 on host for malloc with 4096 block size and 512 block size.
### Live migration ### Live migration
Live migration feature allows to move running virtual machines between SPDK vhost Live migration feature allows to move running virtual machines between SPDK vhost