[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [RFC PATCH v2 00/11] qemu-ga: fsfreeze on Windows using

From: Libaiqing
Subject: Re: [Qemu-devel] [RFC PATCH v2 00/11] qemu-ga: fsfreeze on Windows using VSS
Date: Tue, 23 Apr 2013 11:08:46 +0000

  I tried the patch v2,with the following config.
  Guest os : win7 32bit professional
  Host os : fedora 17 
     qemu-kvm -enable-kvm -name win7 -M pc-0.15 -m 1024 -smp 2 -boot c  -device 
virtio-serial  -drive 
file=/home/libaiqing/vss/win7.img,if=virtio,index=0,format=qcow2 - -monitor 
stdio -vga qxl  -vnc :1 -chardev

    1 Extcuting the command "net start qemu-ga" failed,but the command 
"qemu-qa.exe -m virtio-serial -p \\.\Global\org.qemu.guest_agent.1" is ok.
    2 executing the command "{"execute":"guest-fsfreeze-freeze"}" failed,the 
output is:

 address@hidden ~]# socat stdio,ignoreeof 
{"return": {"version": "1.4.50", "supported_commands": [{"enabled": true, 
"name": "guest-set-vcpus"}, {"enabled": true, "name": "guest-get-vcpus"}, 
{"enabled": true, "name": "guest-network-get-interfaces"}, {"enabled": true, 
"name": "guest-suspend-hybrid"}, {"enabled": true, "name": 
"guest-suspend-ram"}, {"enabled": true, "name": "guest-suspend-disk"}, 
{"enabled": true, "name": "guest-fstrim"}, {"enabled": true, "name": 
"guest-fsfreeze-thaw"}, {"enabled": true, "name": "guest-fsfreeze-freeze"}, 
{"enabled": true, "name": "guest-fsfreeze-status"}, {"enabled": true, "name": 
"guest-file-flush"}, {"enabled": true, "name": "guest-file-seek"}, {"enabled": 
true, "name": "guest-file-write"}, {"enabled": true, "name": 
"guest-file-read"}, {"enabled": true, "name": "guest-file-close"}, {"enabled": 
true, "name": "guest-file-open"}, {"enabled": true, "name": "guest-shutdown"}, 
{"enabled": true, "name": "guest-info"}, {"enabled": true, "name": 
"guest-set-time"}, {"enabled": true, "name": "guest-get-time"}, {"enabled": 
true, "name": "guest-ping"}, {"enabled": true, "name": "guest-sync"}, 
{"enabled": true, "name": "guest-sync-delimited"}]}}
{"return": "thawed"}
{"error": {"class": "GenericError", "desc": "Failed to pVssbc->SetContext. 
(Error: 8004231b) "}}

Could you give me some advise to debug this problem ? I can provide more 
information if need.

-----Original Message-----
From: address@hidden [mailto:address@hidden On Behalf Of Tomoki Sekiyama
Sent: Saturday, April 13, 2013 4:02 AM
To: address@hidden
Cc: address@hidden; address@hidden; address@hidden; address@hidden
Subject: [Qemu-devel] [RFC PATCH v2 00/11] qemu-ga: fsfreeze on Windows using 


This patch series is attempts to add fsfreeze support for Windows

changes from v1: 
 - Fix out-tree build by stop using recursive Makefile
 - Added script to extract VSS SDK headers on POSIX systems using msitools
   (thanks Paolo)
 - Remove some unnecessary header files

v1: http://lists.gnu.org/archive/html/qemu-devel/2013-02/msg01963.html

* Description
In Windows, VSS (Volume Shadow Copy Service) provides a facility to
quiesce filesystems and applications before disk snapshots are taken.
This patch series implements "fsfreeze" command of qemu-ga using VSS.

* How to build & run qemu-ga with VSS support

 - Download Microsoft VSS SDK from:

 - Setup the SDK
   scripts/extract-vsssdk-headers setup.exe (on POSIX-systems)

 - Specify installed SDK directory to configure option as:
   ./configure -with-vss-sdk="path/to/VSS SDK" --cross-prefix=i686-w64-mingw32-

 - Make qemu-ga.exe

 - Install qemu-ga.exe and qga/vss-win32-provider/qga-provider.{dll,tlb} into
   the same directory in guests

 - Run `qemu-ga.exe -s install' and `net start qemu-ga' in the guests

Any feedback are appliciated.

Tomoki Sekiyama (11):
      configure: Support configuring c++ compiler
      Fix errors and warnings while compiling with c++ compilier
      Add a script to extract VSS SDK headers on POSIX system
      qemu-ga: Add an configure option to specify path to Windows VSS SDK
      qemu-ga: Add Windows VSS provider to quiesce applications on fsfreeze
      qemu-ga: Add Windows VSS requester to quisce applications and filesystems
      qemu-ga: call Windows VSS requester in fsfreeze command handler
      qemu-ga: install Windows VSS provider on `qemu-ga -s install'
      qemu-ga: Add VSS provider .tlb file in the repository
      QMP/qemu-ga-client: make timeout longer for guest-fsfreeze-freeze command
      QMP/qmp.py: set locale for exceptions to display non-ascii messages 

 .gitignore                              |    1 
 Makefile                                |    3 
 Makefile.objs                           |    2 
 QMP/qemu-ga-client                      |    4 
 QMP/qmp.py                              |    4 
 configure                               |   59 ++++
 hmp.c                                   |    2 
 hw/pci/pci.c                            |    2 
 qga/Makefile.objs                       |    7 
 qga/commands-win32.c                    |   74 ++++-
 qga/main.c                              |   41 +++
 qga/vss-win32-provider.h                |   26 ++
 qga/vss-win32-provider/Makefile.objs    |   25 ++
 qga/vss-win32-provider/install.cpp      |  494 +++++++++++++++++++++++++++++++
 qga/vss-win32-provider/provider.cpp     |  474 ++++++++++++++++++++++++++++++
 qga/vss-win32-provider/qga-provider.def |   10 +
 qga/vss-win32-provider/qga-provider.idl |   20 +
 qga/vss-win32-provider/qga-provider.tlb |  Bin
 qga/vss-win32-requester.cpp             |  393 +++++++++++++++++++++++++
 qga/vss-win32-requester.h               |   31 ++
 qga/vss-win32.h                         |   85 +++++
 rules.mak                               |    9 +
 scripts/extract-vsssdk-headers          |   25 ++
 scripts/qapi.py                         |    9 +
 24 files changed, 1785 insertions(+), 15 deletions(-)
 create mode 100644 qga/vss-win32-provider.h
 create mode 100644 qga/vss-win32-provider/Makefile.objs
 create mode 100644 qga/vss-win32-provider/install.cpp
 create mode 100644 qga/vss-win32-provider/provider.cpp
 create mode 100644 qga/vss-win32-provider/qga-provider.def
 create mode 100644 qga/vss-win32-provider/qga-provider.idl
 create mode 100644 qga/vss-win32-provider/qga-provider.tlb
 create mode 100644 qga/vss-win32-requester.cpp
 create mode 100644 qga/vss-win32-requester.h
 create mode 100644 qga/vss-win32.h
 create mode 100755 scripts/extract-vsssdk-headers

reply via email to

[Prev in Thread] Current Thread [Next in Thread]