From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45849) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W2lGV-0002PX-Sh for qemu-devel@nongnu.org; Mon, 13 Jan 2014 12:25:37 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1W2lGP-0001ZC-St for qemu-devel@nongnu.org; Mon, 13 Jan 2014 12:25:31 -0500 Received: from usindpps03.hds.com ([207.126.252.16]:44737) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1W2lGP-0001YV-Ch for qemu-devel@nongnu.org; Mon, 13 Jan 2014 12:25:25 -0500 From: Tomoki Sekiyama Date: Mon, 13 Jan 2014 12:25:14 -0500 Message-ID: <20140113172514.11163.75410.stgit@helix> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Subject: [Qemu-devel] [PATCH 0/3] qga: vss-win32: Fix interference with other VSS requesters List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: ghammer@redhat.com, mdroth@linux.vnet.ibm.com, lcapitulino@redhat.com, mitsuhiro.tanino@hds.com, rhod@redhat.com, pbonzini@redhat.com, seiji.aguchi@hds.com, areis@redhat.com Current functionarity of qemu-ga VSS provider is limited to implement filesystems freeze, and doesn't support the creation of shadow copies within the guest. However, when no other hardware snapshot provider is installed, VSS may choose qemu-ga VSS provider to create shadow copies and fail with VSS_E_UNEXPECTED_PROVIDER_ERROR. Similar issue occurs when the requester deletes shadow copies. This patchset fix this issue by telling VSS that the volume is not supported by qemu-ga VSS provider when it is kicked by other requesters. It also fixes wrong error handling around OpenEvent/CreateEvent WinAPI, which returns NULL instead of INVALID_HANDLE_VALUE on errors. https://bugzilla.redhat.com/show_bug.cgi?id=1036341 --- Tomoki Sekiyama (3): qga: vss-win32: Use NULL as an invalid pointer for OpenEvent and CreateEvent qga: vss-win32: Fix interference with snapshot creation by other VSS requesters qga: vss-win32: Fix interference with snapshot deletion by other VSS request qga/vss-win32/provider.cpp | 21 ++++++++++--- qga/vss-win32/requester.cpp | 70 ++++++++++++++++++++----------------------- 2 files changed, 49 insertions(+), 42 deletions(-) -- Tomoki Sekiyama