Patch 1 fixes the bug I dealt with. Patches 2-3 is a somewhat protection from similar bugs. Patches 5-6 drop error flag from the agent altogether, so now there are less places for bugs to lurk. Rest patches cleanup loop function. I think 1-3 can be dropped if 6 is approved. It is just 6 can be considered controversial. Nikolay Shirokovskiy (10): qemu: agent: unset error flag in EOF handler qemu: agent: dont set error after agent cleanup qemu: agent: clear error flag upon init qemu: agent: handle agent connection errors in one place qemu: agent: straigten up failed agent start case qemu: agent: drop agent error flag (6) qemu: agent: simplify io loop qemu: agent: exit early if error is already set qemu: agent: fix loop error messages qemu: agent: drop redundant referencing in loop src/qemu/qemu_agent.c | 183 ++++++++++++++++++------------------------- src/qemu/qemu_agent.h | 2 - src/qemu/qemu_domain.c | 41 +++++----- src/qemu/qemu_domain.h | 1 - src/qemu/qemu_driver.c | 9 +-- src/qemu/qemu_migration.c | 13 +-- src/qemu/qemu_process.c | 90 ++++----------------- tests/qemumonitortestutils.c | 1 - 8 files changed, 119 insertions(+), 221 deletions(-) -- 1.8.3.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list