This series makes use of the chardev fd passing arriving in QEMU 2.12
to get rid of the startup race wrt opening the QEMU monitor. It is
actually enabled in all chardev UNIX sockets for sake of having the
same codepath everywhere, but is only important for the monitor socket.
Changed in v3:
- Refactor UNIX socket opening code to allow it to be mocked
in the unit tests to avoid creating real UNIX sockets
Daniel P. Berrangé (4):
qemu: probe for -chardev 'fd' parameter for FD passing
qemu: support passing pre-opened UNIX socket listen FD
qemu: don't retry connect() if doing FD passing
qemu: remove pointless connect retry logic in agent
src/qemu/qemu_agent.c | 84 ++-----------------
src/qemu/qemu_capabilities.c | 4 +-
src/qemu/qemu_capabilities.h | 1 +
src/qemu/qemu_command.c | 64 +++++++++++++-
src/qemu/qemu_command.h | 4 +
src/qemu/qemu_monitor.c | 54 +++++++-----
src/qemu/qemu_monitor.h | 1 +
src/qemu/qemu_process.c | 27 ++++--
.../caps_2.12.0.aarch64.xml | 1 +
.../caps_2.12.0.ppc64.xml | 1 +
.../caps_2.12.0.s390x.xml | 1 +
.../caps_2.12.0.x86_64.xml | 1 +
tests/qemumonitortestutils.c | 1 +
.../disk-drive-write-cache.x86_64-latest.args | 3 +-
...irtio-scsi-reservations.x86_64-latest.args | 3 +-
tests/qemuxml2argvmock.c | 16 ++++
16 files changed, 153 insertions(+), 113 deletions(-)
--
2.17.0