qemu/tests
Stefan Hajnoczi 98563fc3ec aio: add aio_context_acquire() and aio_context_release()
It can be useful to run an AioContext from a thread which normally does
not "own" the AioContext.  For example, request draining can be
implemented by acquiring the AioContext and looping aio_poll() until all
requests have been completed.

The following pattern should work:

  /* Event loop thread */
  while (running) {
      aio_context_acquire(ctx);
      aio_poll(ctx, true);
      aio_context_release(ctx);
  }

  /* Another thread */
  aio_context_acquire(ctx);
  bdrv_read(bs, 0x1000, buf, 1);
  aio_context_release(ctx);

This patch implements aio_context_acquire() and aio_context_release().

Note that existing aio_poll() callers do not need to worry about
acquiring and releasing - it is only needed when multiple threads will
call aio_poll() on the same AioContext.

Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2014-03-13 14:42:24 +01:00
..
acpi-test-data acpi-test: update expected SSDT files 2014-03-11 13:27:27 +02:00
libqos libqos: Generalize I/O-mapped fw_cfg 2013-07-18 13:27:47 -05:00
multiboot tests: Multiboot mmap test case 2013-10-28 17:34:42 +01:00
qapi-schema qapi script: do not allow string discriminator 2014-03-11 09:07:42 -04:00
qemu-iotests iotests: Test corruption during COW request 2014-03-13 14:23:27 +01:00
tcg target-xtensa: add basic tests for cache opcodes 2014-02-24 04:47:02 +04:00
.gitignore tests/.gitignore: Ignore tests/check-qom-interface 2014-02-01 13:56:31 +04:00
acpi-test.c acpi-test: issue errors instead of warnings when possible 2014-03-09 21:09:38 +02:00
blockdev-test.c blockdev-test: add test case for drive_add duplicate IDs 2013-11-07 13:58:58 +01:00
boot-order-test.c qtest: Use -display none by default 2013-11-19 10:28:14 +01:00
check-block.sh Add 'make check-block' 2012-03-12 15:14:07 +01:00
check-qdict.c check-qdict: Test termination of qdict_array_split() 2014-02-21 22:18:26 +01:00
check-qfloat.c qapi: move include files to include/qobject/ 2012-12-19 08:31:31 +01:00
check-qint.c qapi: move include files to include/qobject/ 2012-12-19 08:31:31 +01:00
check-qjson.c qjson: to_json() case QTYPE_QSTRING is buggy, rewrite 2013-04-13 19:40:25 +00:00
check-qlist.c qapi: move include files to include/qobject/ 2012-12-19 08:31:31 +01:00
check-qom-interface.c tests: Test QOM interface casting 2013-12-24 17:27:17 +01:00
check-qstring.c qapi: move include files to include/qobject/ 2012-12-19 08:31:31 +01:00
e1000-test.c tests: Add e1000 qtest 2014-02-14 16:22:33 +01:00
eepro100-test.c tests: Add eepro100 qtest 2014-02-14 16:22:33 +01:00
endianness-test.c qtest: Include system headers before user headers 2014-02-17 23:10:02 +01:00
fdc-test.c qtest: Fix the bug about disable vnc causes "make check" fail 2014-01-22 12:07:16 +01:00
fw_cfg-test.c qtest: Include system headers before user headers 2014-02-17 23:10:02 +01:00
hd-geo-test.c qtest: Use -display none by default 2013-11-19 10:28:14 +01:00
i440fx-test.c QOM infrastructure fixes and device conversions 2014-02-20 13:05:48 +00:00
ide-test.c qtest: Fix the bug about disable vnc causes "make check" fail 2014-01-22 12:07:16 +01:00
ipoctal232-test.c tests: Add ipoctal232 qtest 2014-02-14 21:07:13 +01:00
libqtest.c qtest: kill QEMU process on g_assert() failure 2014-02-19 15:45:51 +01:00
libqtest.h libqtest: add qmp(fmt, ...) -> QDict* function 2013-11-07 13:58:53 +01:00
m48t59-test.c qtest: Include system headers before user headers 2014-02-17 23:10:02 +01:00
Makefile rfifolock: add recursive FIFO lock 2014-03-13 14:42:21 +01:00
ne2000-test.c tests: Add ne2000 qtest 2014-02-14 20:50:19 +01:00
pcnet-test.c tests: Add pcnet qtest 2014-02-14 16:22:33 +01:00
qdev-monitor-test.c virtio-blk: Convert to QOM realize 2013-12-09 21:46:49 +01:00
qemu-iotests-quick.sh qemu-iotests: add more tests to the "quick" group 2014-02-28 18:59:06 +01:00
qom-test.c qtest: Include system headers before user headers 2014-02-17 23:10:02 +01:00
rtc-test.c qtest: Include system headers before user headers 2014-02-17 23:10:02 +01:00
rtl8139-test.c tests: Add rtl8139 qtest 2014-02-14 16:22:33 +01:00
test-aio.c aio: add aio_context_acquire() and aio_context_release() 2014-03-13 14:42:24 +01:00
test-bitops.c tests: fix 64-bit int literals for 32-bit hosts 2013-11-05 19:59:43 -08:00
test-coroutine.c Test coroutine execution order 2013-11-28 10:30:52 +01:00
test-cutils.c cutils: unsigned int parsing functions 2013-02-04 14:38:33 -06:00
test-hbitmap.c hbitmap: add assertion on hbitmap_iter_init 2013-01-25 18:18:35 +01:00
test-int128.c tests/test-int128: Don't use __noclone__ attribute on clang 2014-03-02 17:20:37 +04:00
test-iov.c test-iov: add iov_discard_front/back() testcases 2013-01-02 15:58:09 +01:00
test-mul64.c tests: Add unit tests for mulu64 and muls64 2013-02-17 14:28:58 +00:00
test-opts-visitor.c tests: fix 64-bit int literals for 32-bit hosts 2013-11-05 19:59:43 -08:00
test-qdev-global-props.c qdev: Set globals in instance_post_init function 2013-08-16 18:44:33 +02:00
test-qmp-commands.c tests: test-qmp-commands: Fix double free 2014-03-11 09:07:42 -04:00
test-qmp-input-strict.c qapi script: do not allow string discriminator 2014-03-11 09:07:42 -04:00
test-qmp-input-visitor.c qapi script: do not allow string discriminator 2014-03-11 09:07:42 -04:00
test-qmp-output-visitor.c qapi script: do not allow string discriminator 2014-03-11 09:07:42 -04:00
test-rfifolock.c rfifolock: add recursive FIFO lock 2014-03-13 14:42:21 +01:00
test-string-input-visitor.c Use error_is_set() only when necessary 2014-02-17 11:57:23 -05:00
test-string-output-visitor.c QOM infrastructure fixes and device conversions 2014-02-20 13:05:48 +00:00
test-thread-pool.c aio / timers: Add QEMUTimerListGroup to AioContext 2013-08-22 19:10:27 +02:00
test-throttle.c misc: New spelling fixes in comments 2013-10-26 13:01:57 +04:00
test-visitor-serialization.c tests/qapi-schema: Cover complex types with base 2014-03-03 11:16:45 -05:00
test-vmstate.c tests: Some unit tests for vmstate.c 2014-01-13 14:04:53 +01:00
test-x86-cpuid.c target-i386: Topology & APIC ID utility functions 2013-01-27 14:34:27 +01:00
test-xbzrle.c Add XBZRLE testing 2013-02-01 08:32:20 +01:00
tmp105-test.c qtest: Include system headers before user headers 2014-02-17 23:10:02 +01:00
tpci200-test.c tests: Add tpci200 qtest 2014-02-14 21:02:27 +01:00
virtio-net-test.c tests: Add virtio-net qtest 2014-02-14 21:01:03 +01:00
vmxnet3-test.c tests: Add vmxnet3 qtest 2014-02-14 16:22:33 +01:00