On 04/18/2018 01:30 PM, Daniel P. Berrangé wrote:
Since libvirt called bind() and listen() on the UNIX socket, it is
guaranteed that connect() will immediately succeed, if QEMU is running
normally. It will only fail if QEMU has closed the monitor socket by
mistake or if QEMU has exited, letting the kernel close it.
With this in mind we can remove the retry loop and timeout when
connecting to the QEMU monitor if we are doing FD passing. Libvirt can
go straight to sending the QMP greeting and will simply block waiting
for a reply until QEMU is ready.
Signed-off-by: Daniel P. Berrangé <berrange(a)redhat.com>
---
src/qemu/qemu_capabilities.c | 2 +-
src/qemu/qemu_monitor.c | 54 ++++++++++++++++++++++++++------------------
src/qemu/qemu_monitor.h | 1 +
src/qemu/qemu_process.c | 27 ++++++++++++++++------
tests/qemumonitortestutils.c | 1 +
5 files changed, 55 insertions(+), 30 deletions(-)
Reviewed-by: John Ferlan <jferlan(a)redhat.com>
John