qemu/backends
Marc-André Lureau c4fb8561bc tpm: replace GThreadPool with AIO threadpool
The TPM backend uses a GThreadPool to handle IO in a seperate
thread. However, GThreadPool isn't integrated with Qemu main loops,
making it unnecessarily complicated to deal with.

Qemu has a AIO threadpool, that is better integrated with loops and
various IO functions, provides completion BH by default etc.

Remove the only user of GThreadPool from qemu, use AIO threadpool.

Note that the backend:
- no longer accepts queing multiple requests (unneeded so far)
- increase ref to itself when handling a command, for extra safety
- tpm_backend_thread_end() is renamed tpm_backend_finish_sync() and
will wait for completion of BH (request_completed), which will help
migration handling.

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Reviewed-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
Signed-off-by: Stefan Berger <stefanb@linux.vnet.ibm.com>
2018-01-29 14:22:23 -05:00
..
cryptodev-builtin.c cryptodev: fix asserting single queue 2017-03-23 17:22:01 +08:00
cryptodev.c qom: Remove unused errp parameter from can_be_deleted() 2017-09-01 10:43:07 -03:00
hostmem-file.c hostmem-file: add "align" option 2018-01-19 11:18:51 -02:00
hostmem-ram.c memory: Rename memory_region_init_ram() to memory_region_init_ram_nomigrate() 2017-07-14 17:59:42 +01:00
hostmem.c QAPI patches for 2017-09-01 2017-09-04 13:28:09 +01:00
Makefile.objs char: move char devices to chardev/ 2017-06-02 11:33:53 +04:00
rng-egd.c char: add backend hotswap handler 2017-07-14 11:04:33 +02:00
rng-random.c rng-random: rename RndRandom to RngRandom 2016-05-23 12:18:43 +05:30
rng.c include/qemu/osdep.h: Don't include qapi/error.h 2016-03-22 22:20:15 +01:00
tpm.c tpm: replace GThreadPool with AIO threadpool 2018-01-29 14:22:23 -05:00