Hi, This series cleans up a bit the TPM IO thread handling, allows to report backend error to hw/frontend, and implements the CRB device. I adapted a previously sent patch "tpm: extend TPM CRB with state migration support" from Stefan, and included an old pending patch "lookup cancel path" in the series to empty my TPM queue.
Comments welcome Marc-André Lureau (4): tpm: lookup cancel path under tpm device class tpm: replace GThreadPool with AIO threadpool tpm: report backend request error tpm: add CRB device Stefan Berger (1): tpm: extend TPM CRB with state migration support qapi/tpm.json | 5 +- include/hw/acpi/tpm.h | 72 ++++++++ include/sysemu/tpm.h | 5 +- include/sysemu/tpm_backend.h | 15 +- backends/tpm.c | 59 +++--- hw/i386/acpi-build.c | 34 +++- hw/tpm/tpm_crb.c | 357 +++++++++++++++++++++++++++++++++++++ hw/tpm/tpm_emulator.c | 21 +-- hw/tpm/tpm_passthrough.c | 65 ++++--- hw/tpm/tpm_tis.c | 3 +- default-configs/i386-softmmu.mak | 1 + default-configs/x86_64-softmmu.mak | 1 + hw/tpm/Makefile.objs | 1 + 13 files changed, 555 insertions(+), 84 deletions(-) create mode 100644 hw/tpm/tpm_crb.c -- 2.16.0.rc1.1.gef27df75a1