Commit Graph
37 Commits
Author SHA1 Message Date
Tim Deegan e0638f7e62 [HVM] Save/restore: don't get guest size from "memory_static_min"
since it doesn't mean that any more.  This is a sticking-plaster
to get HVM S/R working until the proper memory-map handling patch
is ready.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
2007-03-29 15:27:18 +00: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
kfraser@localhost.localdomain 7954a48c41 Add suspend_cancel flag to linux elf notes.
Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
2007-02-28 09:41:02 +00:00
Ian Campbell 0a650f1a63 [TOOLS] Add support for XEN_ELFNOTE_L1_MFN_VALID to readnotes.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-02-27 15:39:08 +00:00
Ian Campbell 6f1113b5c5 [LIBELF] Prefer PT_NOTE segments to SHT_NOTE sections for ELF notes.
It's always an error to try to use sections on an executable; the
segments in the phdr are definitive.

Unfortunately we cannot drop SHT_NOTE support completely due to a
binutils bug which causes kernels to have the offset field of the
PT_NOTE phdr set to zero:

	http://sourceware.org/bugzilla/show_bug.cgi?id=594

This bug is present in binutils 2.17 although some distros have
backported the fix.

Therefore we simply prefer a PT_NOTE segment if we find one otherwise
we still use the SHT_NOTE section (and then the old __xen_guest
section).

Based on a patch from Jeremy Fitzhardinge.

Also added XEN_ELFNOTE_HV_START_LOW to readnotes.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-02-19 12:21:41 +00:00
Tim Deegan e0bc4531df [HVM] Save/restore: disentangle max_pfn from nr_pages.
These have been used interchangeably, which is OK for PV domains but
not for HVM.  This fixes an over-allocation by 256MB when restoring
HVM guests that have more than 4GB of RAM.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
2007-02-09 10:48:41 +00:00
Tim Deegan de602931ef [HVM] Save/restore: don't try to set the console ring MFN
in a HVM restore.  In particular, don't print an uninitialized stack
variable, which causes XMLRPC exceptions in xend.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
2007-02-08 15:00:33 +00:00
Emmanuel Ackaouy e42527954e [TOOLS] Fix typos which breaks readnotes transparent gunzipping ...
From: Gerd Hoffmann <kraxel@suse.de>
Signed-off-by: Emmanuel Ackaouy <ack@xensource.com>
2007-01-31 15:23:51 +00:00
Emmanuel Ackaouy 62e3530a35 Support transparant gunzipping in the readnotes utility.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 tools/xcutils/readnotes.c |   14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)
2007-01-25 22:16:52 +00:00
Emmanuel Ackaouy 0d2b8607e3 libelf: use for readnotes utility.
This patch makes the readnotes utility use libelf.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 tools/xcutils/readnotes.c |  277 +++++++---------------------------------------
 1 file changed, 45 insertions(+), 232 deletions(-)
2007-01-25 22:16:52 +00:00
kfraser@localhost.localdomain 9e20e8426f [TOOLS] Avoid void* arithmetic when parsing elf notes.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-19 15:05:20 +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 5dfa416d52 Don't use $(LINK.o), as it doesn't pick up -m32/-m64 from $(CFLAGS).
Signed-off-by: John Levon <john.levon@sun.com>
2006-10-19 15:13:09 +01:00
kfraser@localhost.localdomain 2d0b60a90f [SOLARIS] A couple of simple compile fixes for tools/ on Solaris.
Signed-off-by: John Levon <john.levon@sun.com>
2006-10-17 18:15:59 +01:00
kfraser@localhost.localdomain 6311dc03da Clean up duplication of 'install' macros in the Makefiles.
Signed-off-by: John Levon <john.levon@sun.com>
2006-10-17 15:57:05 +01:00
Ian Campbell e76cb15dce [TOOLS] Use ELFSIZE to pick the ELF structures to use in readnotes.c
We can remove Elf_Ehdr since it is only used for e_ident which is an
unsigned char array.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-25 10:39:24 +01:00
Ian Campbell dfeb46aa49 [TOOLS] Add a simple tool to display the Xen specific ELF notes.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-23 14:43:48 +01: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
kaf24@firebug.cl.cam.ac.uk b5fa90ac8e build: Clean up use of .PHONY
* Move .PHONY directives next to targets,
  this makes them a lot harder to miss
* Add missing .PHONY directives
* Remove nonexistent .PHONY directives
* Hopefully I didn'T miss anything...

Signed-Off-By: Horms <horms@verge.net.au>
2006-04-10 17:02:49 +01:00
kaf24@firebug.cl.cam.ac.uk d27fbb0061 Move 'debug' build option into the outermost Config.mk file.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-09 22:31:45 +01:00
kaf24@firebug.cl.cam.ac.uk 326450f67e Clean up the usage of CFLAGS. This is nice for packagers, who would
like to control the base compilation flags from a central place.

Signed-off-by: Charles Coffing <ccoffing@novell.com>
2006-03-09 21:17:45 +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
emellor@ewan af1b5637f4 Allow parallel 32- and 64-bit Xen installations. Move xc_save, xc_restore,
and xenconsole out of /usr/libexec/xen and into one of /usr/lib/xen/bin or
/usr/lib64/xen/bin.  Remove all the PATH hacking inside Xend, and rely upon
the PATH being set correctly from outside.  Added an auxbin module for
handling the hacky stuff.

Replace the few /usr/bin/python bang paths with /usr/bin/env python.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-10-11 14:55:12 +01:00
cl349@firebug.cl.cam.ac.uk 3bc1edc4ab Update suspend/resume for new console code.
- translate console mfn to pfn
- unbind/bind console evtchn
- recover console mfn on restore
- trigger xenconsoled refresh after mfn is put in store
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-09-03 18:48:39 +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
kaf24@firebug.cl.cam.ac.uk 16504669c5 Cross-compilation fixes.
Signed-off-by: Michal Ostrowski <mostrows@watson.ibm.com>
2005-08-30 13:15:20 +00: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 59f1e250c2 Fix checkpointing - add save/restore support to the xenbus driver.
- Add xenbus driver suspend/resume functions
- Change xenbus irq to not be shared
- Translate store mfn in suspend record to pfn and back
- Make tools re-introduce the domain to the store
Signed-off-by: Rusty Russel <rusty@rustcorp.com.au>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-08-02 17:12:36 +00:00
cl349@firebug.cl.cam.ac.uk 519108b9f7 bitkeeper revision 1.1534.1.1 (429399e0oJudIjoFsgWFxNKnCM7qTg)
Nothing but vnet uses libxutil -- move it there.
Makefile, xc.c, setup.py, configure, configure.in, Makefile.in:
  This doesn't use libxutil.
Makefile, Makefile.vnet, Rules.mk:
  Move libxutil into vnet since it's only used there.
Many files:
  mvdir
2005-05-24 21:17:20 +00:00
cl349@firebug.cl.cam.ac.uk 04ef79a410 bitkeeper revision 1.1527.1.3 (42936982HEfOXuPvsCgdi5IHEHax_Q)
Don't need xc_save_OBJS with updated Makefile.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-05-24 17:50:58 +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
kaf24@firebug.cl.cam.ac.uk 03f0a338a8 bitkeeper revision 1.1527.1.2 (4293468ayy5XU1yxu0QwnCQ83S5pbA)
No more dependency of GNU Make 'eval' function, which is not present in
older versions.
Signed-off-by: Keir Fraser <keir@xensource.com>
2005-05-24 15:21:46 +00:00
kaf24@firebug.cl.cam.ac.uk 2584935836 bitkeeper revision 1.1527.1.1 (42933814hYUdPBrhJ2nEsS5J3nRP8Q)
Another xcutil Makefile 'fix'.
Signed-off-by: Keir Fraser <keir@xensource.com>
2005-05-24 14:20:04 +00:00
kaf24@firebug.cl.cam.ac.uk 92a0c60a4b bitkeeper revision 1.1526 (4292f6fatFGrb_g2pL3e_YfSdZhjPA)
Another xcutils build fix: libxc depends on libxutil.
Signed-off-by: Keir Fraser <keir@xensource.com>
2005-05-24 09:42:18 +00:00
cl349@firebug.cl.cam.ac.uk 656729f477 bitkeeper revision 1.1523.1.1 (4292f383Cc0iiNE6syBhzLa27UwM7w)
Makefile:
  Fix library link on systems which don't have libxc installed (yet).
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-05-24 09:27:31 +00:00
cl349@firebug.cl.cam.ac.uk 35db9d71b6 bitkeeper revision 1.1513.1.1 (42925a6aSZSwfyaVsNzV4psPmpZwZg)
Execute xc_linux_restore in a seperate process so that it can't
crash xend.  Also handle errors passed from xc_linux_restore and
log info messages from xc_linux_restore.
XendDomain.py:
  Popen xc_restore instead of calling xc_linux_restore directly.
xc.c:
  Add pyxc_handle exporting the file descriptor to the control interface.
  Remove xc_linux_restore -- replaced by popen of xc_restore directly
  from python.
xc_linux_restore.c:
  Enable debug output.
xpopen.py:
  Add xpopen functionality:
  Optionally exclude a list of file descriptors from being closed, allowing
  access to those file descriptors from the command.
  Remove unused parts.
xpopen.py, Makefile, xc_restore.c:
  new file
Makefile:
  Add xcutils subdir.
ignore:
  Add tools/xcutils/xc_restore.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-05-23 22:34:18 +00:00