qemu-e2k/tests
Stefan Hajnoczi 70556264a8 libqos: use microseconds instead of iterations for virtio timeout
Some hosts are slow or overloaded so test execution takes a long time.
Test cases use timeouts to protect against an infinite loop stalling the
test forever (especially important in automated test setups).

Commit 6cd14054b6 ("libqos virtio:
Increase ISR timeout") increased the clock_step() value in an attempt to
lengthen the virtio interrupt wait timeout, but timeout failures are
still occuring on the Travis automated testing platform.

This is because clock_step() only affects the guest's virtual time.
Virtio requests can be bottlenecked on host disk I/O latency - which
cannot be improved by stepping the clock, so the fix was ineffective.

This patch changes the qvirtio_wait_queue_isr() and
qvirtio_wait_config_isr() timeout mechanism from loop iterations to
microseconds.  This way the test case can specify an absolute 30 second
timeout.  Number of loop iterations is not a reliable timeout mechanism
since the speed depends on many factors including host performance.

Tests should no longer timeout on overloaded Travis instances.

Cc: Marc Marí <marc.mari.barcelo@gmail.com>
Reported-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2014-09-29 17:31:11 +01:00
..
acpi-test-data acpi-dsdt: procedurally generate _PRT 2014-07-28 23:02:39 +02:00
image-fuzzer block: delete cow block driver 2014-09-22 11:39:45 +01:00
libqos libqos: use microseconds instead of iterations for virtio timeout 2014-09-29 17:31:11 +01:00
multiboot
qapi-schema qapi script: clean up in scripts 2014-06-27 09:27:56 -04:00
qemu-iotests qemu-iotests: Fail test if explicit test case number is unknown 2014-09-25 15:25:20 +02:00
tcg
vmstate-static-checker-data tests: vmstate static checker: add size mismatch inside substructure 2014-06-23 19:14:52 +02:00
.gitignore qapi: Ignore files created during make check 2014-09-26 21:18:15 +04:00
ac97-test.c
ahci-test.c ahci: Add test_identify case to ahci-test. 2014-09-22 11:39:43 +01:00
bios-tables-test.c tests/bios-tables-test: check the value returned by fopen() 2014-08-24 13:16:32 +04:00
blockdev-test.c
boot-order-test.c
check-block.sh
check-qdict.c
check-qfloat.c
check-qint.c
check-qjson.c json-lexer: fix escaped backslash in single-quoted string 2014-06-23 11:01:24 -04:00
check-qlist.c
check-qom-interface.c
check-qstring.c
display-vga-test.c
e1000-test.c e1000: remove broken support for 82573L 2014-06-09 15:38:58 +02:00
eepro100-test.c
endianness-test.c
es1370-test.c
fdc-test.c tests: Add missing 'static' attributes (fix warnings from smatch) 2014-07-18 17:45:37 +04:00
fw_cfg-test.c
hd-geo-test.c
i440fx-test.c
i82801b11-test.c
ide-test.c qtest/ide: Uninitialize PC allocator 2014-09-08 11:12:43 +01:00
intel-hda-test.c
ioh3420-test.c
ipoctal232-test.c
libqtest.c tests: Add virtio device initialization 2014-09-08 11:12:43 +01:00
libqtest.h tests: Add virtio device initialization 2014-09-08 11:12:43 +01:00
m48t59-test.c
Makefile qapi: Consistent whitespace in tests/Makefile 2014-09-26 21:18:02 +04:00
ne2000-test.c
nvme-test.c
pcnet-test.c
pvpanic-test.c
qdev-monitor-test.c
qemu-iotests-quick.sh iotests: Simplify qemu-iotests-quick.sh 2014-07-01 10:15:33 +02:00
qom-test.c libqtest: escape strings in QMP commands, fix leak 2014-07-01 10:20:41 +02:00
rtc-test.c
rtl8139-test.c
spapr-phb-test.c
test-aio.c async: aio_context_new(): Handle event_notifier_init failure 2014-09-22 11:39:48 +01:00
test-bitops.c
test-coroutine.c test-coroutine: test cost introduced by coroutine 2014-08-20 11:51:28 +02:00
test-cutils.c
test-hbitmap.c
test-int128.c
test-iov.c
test-mul64.c
test-opts-visitor.c
test-qdev-global-props.c qdev: Move global validation to a single function 2014-09-18 21:51:24 +03:00
test-qemu-opts.c tests: Add missing 'static' attributes (fix warnings from smatch) 2014-07-18 17:45:37 +04:00
test-qmp-commands.c
test-qmp-event.c tests/test-qmp-event: fix for GLib < 2.31 2014-06-30 15:06:11 +02:00
test-qmp-input-strict.c
test-qmp-input-visitor.c
test-qmp-output-visitor.c
test-rfifolock.c
test-string-input-visitor.c tests: simplify code 2014-06-19 18:44:22 +03:00
test-string-output-visitor.c tests: Fix unterminated string output visitor enum human string 2014-07-14 12:03:20 +02:00
test-thread-pool.c async: aio_context_new(): Handle event_notifier_init failure 2014-09-22 11:39:48 +01:00
test-throttle.c async: aio_context_new(): Handle event_notifier_init failure 2014-09-22 11:39:48 +01:00
test-visitor-serialization.c tests: Add missing 'static' attributes (fix warnings from smatch) 2014-07-18 17:45:37 +04:00
test-vmstate.c tests: Add missing 'static' attributes (fix warnings from smatch) 2014-07-18 17:45:37 +04:00
test-x86-cpuid.c
test-xbzrle.c
tmp105-test.c libqtest: escape strings in QMP commands, fix leak 2014-07-01 10:20:41 +02:00
tpci200-test.c
usb-hcd-ehci-test.c libqos: allow qpci_iomap to return BAR mapping size 2014-08-15 18:03:13 +01:00
usb-hcd-ohci-test.c tests: add OHCI qtest 2014-08-29 12:53:47 +02:00
usb-hcd-uhci-test.c tests: add UHCI qtest 2014-08-29 12:53:47 +02:00
usb-hcd-xhci-test.c tests: add xHCI qtest 2014-08-29 12:53:47 +02:00
vhost-user-test.c qtest: Adapt vhost-user-test to latest vhost-user changes 2014-07-18 02:14:15 +03:00
virtio-9p-test.c
virtio-balloon-test.c
virtio-blk-test.c libqos: use microseconds instead of iterations for virtio timeout 2014-09-29 17:31:11 +01:00
virtio-console-test.c
virtio-net-test.c
virtio-rng-test.c
virtio-scsi-test.c
virtio-serial-test.c
vmxnet3-test.c
wdt_ib700-test.c qtest: new test for wdt_ib700 2014-07-18 14:57:35 +02:00