diff options
| author | Tomoki Sekiyama | 2014-01-13 18:25:29 +0100 |
|---|---|---|
| committer | Michael Roth | 2014-02-23 20:11:26 +0100 |
| commit | ff8adbcfdbbd9c0f2b01ff8a32bc75082fdd9844 (patch) | |
| tree | 5471f51bee348167b44832e72b41513f9623fde4 /include/exec/cpu-common.h | |
| parent | qga: vss-win32: Use NULL as an invalid pointer for OpenEvent and CreateEvent (diff) | |
| download | qemu-ff8adbcfdbbd9c0f2b01ff8a32bc75082fdd9844.tar.gz qemu-ff8adbcfdbbd9c0f2b01ff8a32bc75082fdd9844.tar.xz qemu-ff8adbcfdbbd9c0f2b01ff8a32bc75082fdd9844.zip | |
qga: vss-win32: Fix interference with snapshot creation by other VSS requesters
When a VSS requester such as vshadow.exe or diskshadow.exe requests to
create disk snapshots, Windows may choose qemu-ga VSS provider if it is
only provider registered on the system. However, because it provides only a
function to freeze the filesystem, the snapshotting fails.
This patch adds a check into CQGAVssProvider::IsVolumeSupported() to reject
the request from other VSS requesters, so that the other provider is chosen.
The check of requester is done by confirming event channels between
qemu-ga's requester and provider established. To ensure that the events are
initialized when CQGAVssProvider::IsVolumeSupported() is called, it moves
the initialization earlier.
Signed-off-by: Tomoki Sekiyama <tomoki.sekiyama@hds.com>
Reviewed-by: Gal Hammer <ghammer@redhat.com>
Reviewed-by: Yan Vugenfirer <yvugenfi@redhat.com>
Signed-off-by: Michael Roth <mdroth@linux.vnet.ibm.com>
Diffstat (limited to 'include/exec/cpu-common.h')
0 files changed, 0 insertions, 0 deletions
