Quoting Bishara AbuHattoum (2018-10-07 06:02:16)
> Changes from v1:
> [1/7] qga: group agent init/cleanup init separate routines
> Fixed typo in the commit message and dropped the unnecessary message ID
> [2/7] qga: hang GAConfig/socket_activation off of GAState global
> Dropped the unnecessary message ID
> [3/7] qga: move w32 service handling out of run_agent()
> Fixed run_agent() extra call and dropped the unnecessary message ID
> [4/7] qga: add --retry-path option for re-initializing channel on failure
> Dropped the unnecessary message ID
> [5/7] qga-win: install service with --retry-path set by default
> Dropped the unnecessary message ID
> [6/7] qga-win: report specific error when failing to open channel
> Dropped the unnecessary message ID
> [7/7] qga-win: changing --retry-path option behavior
> Dropped the use of two events and WaitForMultipleObjects, and used
> one 'wakeup_event'.
>
> A patch series was firstly introduced about a year ago which resolves an issue
> with qemu-ga and virtio-serial functionality. The issue was discussed in the
> following thread:
> https://lists.gnu.org/archive/html/qemu-devel/2018-01/msg06256.html
>
> In short, Sameeh sent an implementation which uses udev on Linux and device
> events API on Windows. Since udev API is only supported for kernels 2.6+ it is
> not a good approach and Michael suggested his alternative series which uses a
> loop and checks if the serial is present or not. Since the Windows API is
> supported and has backward compatibility up until Windows xp, there is no reason
> for not using the Windows API. It was finally agreed by Michael and Sameeh that
> a combination of both approaches should be used.
>
> This series does just that, it rebases Michael's patches on top of upstream and
> merges Sameeh's patches for Windows API into Michael's implementation.
>
> Michael's series:
> https://github.com/mdroth/qemu/commits/qga-retry-path
> Sameeh's series:
> https://lists.gnu.org/archive/html/qemu-devel/2017-08/msg02400.html
> https://lists.gnu.org/archive/html/qemu-devel/2017-08/msg02399.html
> https://lists.gnu.org/archive/html/qemu-devel/2017-08/msg02401.html
Thanks, applied to qga tree with some minor fix-ups:
https://github.com/mdroth/qemu/commits/qga
>
> Bishara AbuHattoum (1):
> qga-win: changing --retry-path option behavior
>
> Michael Roth (6):
> qga: group agent init/cleanup init separate routines
> qga: hang GAConfig/socket_activation off of GAState global
> qga: move w32 service handling out of run_agent()
> qga: add --retry-path option for re-initializing channel on failure
> qga-win: install service with --retry-path set by default
> qga-win: report specific error when failing to open channel
>
> qga/channel-win32.c | 3 +-
> qga/installer/qemu-ga.wxs | 2 +-
> qga/main.c | 288 +++++++++++++++++++++++++++++---------
> qga/service-win32.h | 4 +
> 4 files changed, 229 insertions(+), 68 deletions(-)
>
> --
> 2.17.0
>