tools/virtio: add vring_test.
authorRusty Russell <rusty@rustcorp.com.au>
Wed, 20 Mar 2013 03:20:24 +0000 (13:50 +1030)
committerRusty Russell <rusty@rustcorp.com.au>
Wed, 20 Mar 2013 03:36:04 +0000 (14:06 +1030)
commit1515c5ce26ae45a8ecea4e68a484562ca4356442
tree6d28df1c18dcff47f26f347576079a30b5badb37
parentf87d0fbb579818fed3eeb0923cc253163ab93039
tools/virtio: add vring_test.

This is mainly to test the drivers/vhost/vringh.c code, but it also
uses the drivers/virtio/virtio_ring.c code for the guest side.

Usage for testing the basic implementation:

./vringh_test
# Test with indirect descriptors
./vringh_test --indirect
# Test with indirect descriptors and event indexex
./vringh_test --indirect --eventidx

You can run a parallel stress test by adding --parallel to any of the
above options.

eg ./vringh_test --parallel:
Using CPUS 0 and 3
Guest: notified 10107974, pinged 107970
Host: notified 108158, pinged 3172148

./vringh_test --indirect --eventidx --parallel:
Using CPUS 0 and 3
Guest: notified 156357, pinged 156251
Host: notified 156251, pinged 78179

Average of 50 times doing ./vringh_test --indirect --eventidx --parallel:
2.840000-3.040000(2.927292)user

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
tools/virtio/Makefile
tools/virtio/linux/uio.h
tools/virtio/vringh_test.c [new file with mode: 0644]