Commit Graph
18 Commits
Author SHA1 Message Date
Keir Fraser f2878b5bb1 xc_save/xc_restore: Fix wrong data type
xc_interface_open() may return -1, but if we define xc_fd as unsigned
int, then -1 will be > 0.

Signed-off-by: Zhigang Wang <zhigang.x.wang@oracle.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-09-17 14:16:02 +01:00
Keir Fraser 0705c231d9 xc_save: ignore the first suspend event channel notification
I've noticed that the suspend event channel becomes pending as soon as
it is bound. I'm not sure why or whether this is intentional, but it
means that the suspend function will return before the domain has
completed suspending unless the first notification is cleared. Without
this patch, xc_domain_save may find that the guest has not suspended
and sleep in 10ms chunks until it does. Typically this is several
milliseconds of wasted time.

From: Brendan Cully <brendan@cs.ubc.ca>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-09-08 11:16:23 +01:00
Keir Fraser 112dcc7dd0 xc_save: Clean up (*suspend)() callback hook.
Sigend-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-09-08 11:13:03 +01:00
Keir Fraser a2567b2631 xc_save: Janitorial work.
Remove an unused variable.
Replace errx by warnx when cleanup code follows.

From: Brendan Cully <brendan@cs.ubc.ca>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-09-08 10:55:09 +01:00
Keir Fraser 52d9d32d02 Cleanups to suspend-event-channel patches.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-04 12:39:18 +01:00
Keir Fraser 17636f47a4 Teach xc_save to use event-channel-based domain suspend if available.
If the guest provides a suspend event channel through xenstore,
xc_save will use it in preference to the old xenstore-based method.

Xend is still informed when the domain has suspended so that it can
perform device migration in parallel with last-round migration.

Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
2008-07-04 12:00:38 +01:00
Keir Fraser 079d3b064f Fix xc_save compile
Add missing <err.h> include.

Signed-off-by: John Levon <john.levon@sun.com>
2008-03-18 10:59:46 +00:00
Tim Deegan 2abe070373 [HVM] Save/restore: don't leak shared-memory segments after HVM live-migrate.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
2007-07-26 12:00:32 +01:00
Tim Deegan 3e3989b612 [HVM] Live-migration fixups after 15639:c585f993385c
Use the same xenstore area for log-dirty commands as for save/continue,
and avoid a race condition by acking the save command after the save.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
2007-07-24 15:47:36 +01:00
Tim Deegan d11bec8a19 [HVM] Save/restore: merge xc_linux_save and xc_hvm_save
into xc_domain_save, like we did for xc_domain_restore
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>

--HG--
rename : tools/libxc/xc_linux_save.c => tools/libxc/xc_domain_save.c
2007-04-11 14:45:14 +01:00
Tim Deegan da12f80b3e [HVM][QEMU] Save/restore: enable HVM live migration
by getting page-dirtying bitmaps from qemu-dm as well as from xen.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
2007-03-16 11:39:50 +00:00
Tim Deegan 4a13cf1b70 [HVM] save restore: frame work
Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>

frame work for HVM save restore in Control Panel
2007-01-18 16:48:03 +00:00
kfraser@localhost.localdomain d0ed0b289c [XEND] xc_save/xc_restore open the libxc interface independently
of their parent. This is required now that the interface fd is
marked for close-on-exec.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-15 19:04:43 +01:00
emellor@leeni.uk.xensource.com 3a7a9bda1b Extend the xc_linux_save interface to take a callback function for handling the
suspend, and push the printf("suspend") out of xc_linux_save and into xc_save.
This means that xc_linux_save can be used without the xc_save wrapper if
desired.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-01-10 14:23:56 +00:00
shand@ubuntu.eng.hq.xensource.com 01d0370a52 Enable 'live' migration from a tools pov; prior to this the 'live' flag was
being ignored by xend/xc_linux_save.

Signed-off-by: Steven Hand <steven@xensource.com>
2005-09-02 17:36:29 -08:00
cl349@firebug.cl.cam.ac.uk acc63faffa Break the building/save/restore code out into a separate library libxenguest.
Also update the tools accordingly.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-08-25 00:51:20 +00:00
cl349@firebug.cl.cam.ac.uk 60eb663513 Rename libxc => libxenctrl and xc.h => xen/xenctrl.h
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>


--HG--
rename : tools/libxc/xc.h => tools/libxc/xenctrl.h
2005-08-24 23:07:29 +00:00
cl349@firebug.cl.cam.ac.uk 23999c8bc1 bitkeeper revision 1.1527.2.1 (429368a2F0SR4yrzuHsrRucuwriYqA)
Implement the parts of vm save which need interaction with xend
as part of xend, instead of using xfrd.
Execute xc_linux_save in a seperate process so that it can't
crash xend.  Also handle errors passed from xc_linux_save.
xen_domain.c:
  Disable save in xfrd.
xc_save.c:
  new file
Makefile:
  Add xc_save.
XendDomainInfo.py:
  Add suspended state and threading Condition with notification, allowing
  easy waiting for state changes.
XendDomain.py:
  Implement the parts of vm save which need interaction with xend
  as part of xend, instead of using xfrd.  Set state to "suspended"
  when detecting a suspended domain.
  Fix reading output from subprocesses.
  Fix ValueError in xen_domain().
xc.c:
  Remove python binding for xc_linux_save.
xc_linux_save.c:
  Implement the parts of vm save which need interaction with xend
  as part of xend, instead of using xfrd.  Also run xc_linux_save
  in a seperate process.
xc_linux_restore.c:
  Flush output so that xend picks it up timely.
  Also disable debug output again.
xc.h:
  Update xc_linux_save prototype and fix comments for xc_linux_{save,restore}.
ignore:
  Add tools/xcutils/xc_save.
xpopen.py:
  Exit with 127 if exec fails.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-05-24 17:47:14 +00:00