aboutsummaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* x86: Xsave support for PV guests.Keir Fraser2010-11-031-1/+0
| | | | | Signed-off-by: Shan Haitao <haitao.shan@intel.com> Signed-off-by: Han Weidong <weidong.han@intel.com>
* Fix ia64 tools buildKeir Fraser2010-11-021-0/+46
| | | | | | | | | | | 22066:eccfdeb41b80 replaced tools/libxc/ia64/aclinux.h with xen/include/acpi/platform/aclinux.h. Because both are incompatible, tools cannot be built on ia64. This patch fixes compilation errors by defining identifiers at ac_ia64_tools.h. Signed-off-by: KUWAMURA Shin'ya <kuwa@jp.fujitsu.com>
* libxl: fix build since 22325:4ac03710fc32Gianni Tedesco2010-11-011-0/+1
| | | | | | | "libxl: Fix migration of HVM guests" introduces a stat call without including <sys/stat.h> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* hvmloader: Configure gPXE to use serial consoleKeir Fraser2010-10-291-0/+3
| | | | | | | | Sometimes we would rather connect to an HVM's serial console than it's VGA display. In this case we cannot see or interact with the ethernet booting process. This is a bit annoying so let's just enable it. Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com>
* avoid numa placement of cpus with active cpupoolsJuergen Gross2010-10-282-1/+6
| | | | | | | | | When using cpupools don't pin vcpus to numa nodes as this might conflict with the cpupool definition. numa placement should be handled by cpupool configuration instead. Signed-off-by: Juergen Gross <juergen.gross@ts.fujitsu.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* libxl: Fix migration of HVM guestsIan Campbell2010-10-285-10/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | In the default "QemuDeviceModelRecord"-style HVM tail of the migration protocol the size of the qemu save record is unknown at the receiver and therefore it must read until EOF. This is not compatible with the xl migration protocol which contains a post-migration handshake and therefore cannot close the socket on the sending end. What is required is an explicit length field for the save record, which the "RemusDeviceModelState"-style HVM tail includes. Rather than overload the "RemusDeviceModelState" name for a non-Remus use case (on off chance that they need to diverge for some reason in the future) introduce a third style called "DeviceModelRecord0002" which is identical to current "RemusDeviceModelState"-style. Hopefully the inclusion of a number here will allow easier extension in the future without needing to come up with increasingly less helpful names! Also propagate errors from xc_domain_save and libxl__domain_suspend_common to callers. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* xl: support -w (wait) option in xl shutdownIan Campbell2010-10-281-3/+42
| | | | | | | | improves compatibility with xm. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* libxl: Fix format string abuses / vulnerabilitiesIan Jackson2010-10-281-5/+8
| | | | | | | | | | | | | | | | | There are a few places where libxl__xs_write is passed a variable value to write to xenstore, but the semantics are that the first char* is a format string. So use "%s". This fixes the following errors reported by some newer compilers: libxl.c: In function "libxl_create_cpupool": libxl.c:3981: error: format not a string literal and no format arguments libxl.c:3983: error: format not a string literal and no format arguments libxl.c: In function "libxl_cpupool_movedomain": libxl.c:4095: error: format not a string literal and no format arguments Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com> Acked-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Gianni Tedesco <gianni.tedesco@citrix.com>
* libxl: fix dom0 minimum memory threshold checkGianni Tedesco2010-10-281-6/+7
| | | | | | | | | | | | | | libxl_set_memory_target tries to set the memory target for a given domain to new_target_memkb. The function includes a check to make sure that dom0's memory is not reduced below a minimal threshold ie. LIBXL_MIN_DOM0_MEM. However, this check is performed before the new_target_memkb variable is properly initialised - when the value is always zero. This means that the check always fails. Fix this by moving the test to happen after the proper initialisation of new_target_memkb. Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com> Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* gdbsx: Makefiles: correctly generate dependenciesGianni Tedesco2010-10-283-7/+2
| | | | | | | | | | | gdbsx hacks CFLAGS to remove optimisations for easier debugging, however this breaks dep generation due to an early evaluation of CFLAGS and leaves stale files called "..d" after a make clean. We could possibly fix this by separating dep generation from the rest of CFLAGS but it seems a little invasive. The gdbsx hackers can do their own thing during development and testing anyway... Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com>
* ocaml: Makefile: delete dependency files during make cleanGianni Tedesco2010-10-281-1/+1
| | | | | Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* tools: Makefile: delete qemu during make distcleanGianni Tedesco2010-10-281-0/+6
| | | | | | | | The top-level makefile claims this to be the expected behaviour so make it so. Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* libxl: Makefile: delete temporary files during make cleanGianni Tedesco2010-10-281-1/+1
| | | | | Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* blktap2: Makefiles: delete symlinks and deps during make cleanGianni Tedesco2010-10-282-1/+2
| | | | | Signed-off-by: Gianni Tedesco <gianni.tedesco@citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* Do not wait for memory teardown when live migrateMiroslav Rezanina2010-10-282-21/+30
| | | | | | | | | | When trying to live migrate guest with great memory (e.g. 20 GB), there's delay caused by destroying source copy of domain. To speed up this process we can close socket before starting guest destroy, as source guest is not running anymore. Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* libxc: fix xc_version by handling all known command types.Ian Campbell2010-10-271-1/+19
| | | | | | | xend was crashing since 22289:ca4a781c8ae8 due to missing handling of XENVER_commandline. Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
* MergeIan Jackson2010-10-265-0/+2223
|\
| * "kdd" Windows debugger stub.Tim Deegan2010-10-265-0/+2223
| | | | | | | | | | | | | | | | | | | | | | | | kdd runs in dom0, attaches to a domain and speaks the Windows kd serial protocol over a TCP connection (which should go to kd or windbg, e.g. by having another VM with its virtual COM1 set up as a TCP listener). It doesn't do breakpoints &c yet, and windbg can get quite confused since the kernel debugger's not actually running, but it's good enough to extract backtraces from wedged VMs. Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
* | libxc: finalise transition to hypercall buffers.Ian Campbell2010-10-2217-232/+78
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rename xc_set_xen_guest_handle to set_xen_guest_handle[0] and remove now unused functions: - xc_memalign - lock_pages - unlock_pages - hcall_buf_prep - hcall_buf_release [0] sed -i -e 's/xc_set_xen_guest_handle/set_xen_guest_handle/g' \ tools/libxc/*.[ch] \ tools/python/xen/lowlevel/xc/xc.c \ tools/python/xen/lowlevel/acm/acm.c \ tools/libxc/ia64/xc_ia64_stubs.c \ tools/security/secpol_tool.c \ tools/misc/xenpm.c Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: do not align/lock buffers which do not need itIan Campbell2010-10-222-24/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On restore: region_mfn is passed to xc_map_foreign_range and xc_map_foreign_bulk. In both cases the buffer is accessed from the ioctl handler in the kernel and not from any hypercall. Therefore normal copy_{to,from}_user handling in the kernel will cope with any faulting access. p2m_batch is passed to xc_domain_memory_populate_physmap which takes care of bouncing the buffer already. On save: pfn_type is passed to xc_map_foreign_bulk which does not need locking as per region_mfn above. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | secpol: use hypercall buffersIan Campbell2010-10-221-27/+56
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | xenpm: use hypercall buffers.Ian Campbell2010-10-221-14/+42
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | python xc: use hypercall buffer interface.Ian Campbell2010-10-221-21/+49
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | python acm: use hypercall buffer interface.Ian Campbell2010-10-221-68/+103
| | | | | | | | | | | | | | | | | | I have a suspicion these routines should be using libxc rather than reimplementing all the hypercalls again, but I don't have the enthusiasm to fix it. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert ia64 dom0vp interface to hypercall buffersIan Campbell2010-10-222-21/+27
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: switch page offlining interfaces to hypercall buffersIan Campbell2010-10-221-9/+1
| | | | | | | | | | | | | | | | There is no need to lock/bounce minfo->pfn_type in init_mem_info since xc_get_pfn_type_batch() will take care of that for us. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert mmuext op interface over to hypercall buffersIan Campbell2010-10-221-13/+15
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert memory op interface over to hypercall buffersIan Campbell2010-10-222-50/+58
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert gnttab interfaces over to hypercall buffersIan Campbell2010-10-222-22/+17
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert tmem interface over to hypercall buffersIan Campbell2010-10-221-28/+37
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert mca interface over to hypercall buffersIan Campbell2010-10-221-6/+7
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert hvmop interfaces over to hypercall buffersIan Campbell2010-10-222-80/+93
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert flask interfaces over to hypercall buffersIan Campbell2010-10-221-6/+7
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert physdevop interface over to hypercall buffersIan Campbell2010-10-221-6/+5
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert schedop interfaces over to hypercall buffersIan Campbell2010-10-221-10/+11
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert evtchn interfaces over to hypercall buffersIan Campbell2010-10-221-9/+8
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert acm interfaces over to hypercall buffersIan Campbell2010-10-221-18/+21
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert watchdog interface over to hypercall buffersIan Campbell2010-10-221-10/+11
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert sysctl interfaces over to hypercall buffersIan Campbell2010-10-2210-210/+183
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert shadow domctl interfaces and save/restore over to hypercall ↵Ian Campbell2010-10-226-72/+59
| | | | | | | | | | | | | | buffers Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert domctl interfaces over to hypercall buffersIan Campbell2010-10-225-101/+103
| | | | | | | | | | | | | | (defer save/restore and shadow related interfaces til a later patch) Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: convert xc_version over to hypercall buffersIan Campbell2010-10-222-15/+20
| | | | | | | | | | Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson.citrix.com>
* | libxc: infrastructure for hypercall safe data buffers.Ian Campbell2010-10-265-2/+352
|/ | | | | | | | (Modified version of this patch, with updated #includes in xc_hcall_buf.c to fix stubdomain build.) Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* libxc: correct handling of switch_qemu_logdirty callback return valueIan Campbell2010-10-251-2/+2
| | | | | | | | The callback return convention follows xc_domain_save and therefore returns 0 on success and >0 on error, correct the check accordingly. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* hvmloader: reduce iasl verbosityKeir Fraser2010-10-241-2/+2
| | | | | | | I don't think anyone really needs iasl's banner displayed during the build process. Signed-off-by: Jan Beulich <jbeulich@novell.com>
* libxl: add a detailed explanation of the libxl domain memory modelIan Jackson2010-10-211-0/+70
| | | | | | | | | Originally-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Converted to US-ASCII by iwj. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* tools: cleanup domain save switch_qemu_logdirty callbackIan Campbell2010-10-216-39/+65
| | | | | | | | | | | | | | | | | Move the function into struct save_callbacks with the others and add the void *closure to the callback arguments. Add and propagate an error return code from the callback. Use this in libxl to pass the save context to libxl__domain_suspend_common_switch_qemu_logdirty allowing us to reuse the parent's xenstore handle, gc context etc. Also add an apparently missing libxl__free_all to libxl__domain_suspend_common. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* tools: cpupools: add example cpupool config fileJuergen Gross2010-10-212-0/+18
| | | | | | | Adds an example configuration file for xm/xl pool-create Signed-off-by: juergen.gross@ts.fujitsu.com Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* tools: cpupools: xl: commands and library changesJuergen Gross2010-10-2112-84/+822
| | | | | | | | | | | | | | | Support of cpu pools in libxl and xl: library functions xl cpupool-create xl cpupool-list xl cpupool-destroy xl cpupool-cpu-add xl cpupool-cpu-remove xl cpupool-migrate Renamed all cpu pool related names to *cpupool* Signed-off-by: juergen.gross@ts.fujitsu.com Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
* tools: cpupools: Rename cpu-pool commands in xm to cpupool-*Juergen Gross2010-10-214-67/+76
| | | | | | | | | | | | | The xm commands pool-* are renamed to cpupool-* The old pool-* commands are defined as aliases. Signed-off-by: juergen.gross@ts.fujitsu.com Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com> --HG-- rename : tools/python/xen/xm/pool-create.py => tools/python/xen/xm/cpupool-create.py rename : tools/python/xen/xm/pool-new.py => tools/python/xen/xm/cpupool-new.py rename : tools/python/xen/xm/pool.py => tools/python/xen/xm/cpupool.py