aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxc
Commit message (Collapse)AuthorAgeFilesLines
...
* | | | [powerpc] domain building fixes for linux kexec modelJimi Xenidis2006-07-261-4/+10
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following updates are included: - No stack allocation is necessary - Some buggy kernels require r13 to be zeroed - the DTB must be loaded from a fixed address, we are using "/root/DomU.dtb" until we have the tools build the DTB on their own. - Though we give the PFN of the store and console pages to the new domain we must make sure the MFN is given to the tools. Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
* | | [powerpc] Initial checkin of new powerpc files.kfraser@localhost.localdomain2006-07-141-0/+408
| | | | | | | | | | | | | | | | | | From: Hollis Blanchard et al (IBM) Signed-off-by: Keir Fraser <keir@xensource.com>
* | | [powerpc] add PowerPC support to libxckaf24@firebug.cl.cam.ac.uk2006-07-143-2/+12
| |/ |/| | | | | | | Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
* | [XEN] getpagframeinfo field name mfn -> gmfn.kfraser@localhost.localdomain2006-07-051-1/+1
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
* | [XEN] Hypercall-init dom0_op takes GMFN, not MFN.kfraser@localhost.localdomain2006-07-051-1/+2
| | | | | | | | | | Signed-off-by: Steven Smith <sos22@cl.cam.ac.uk>
* | Merge with xen-ia64-unstable.hgkaf24@firebug.cl.cam.ac.uk2006-07-035-37/+49
|\ \ | |/ |/|
| * [LIBXC] Fix the 64-bit build.kaf24@firebug.cl.cam.ac.uk2006-07-011-4/+5
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * Provide more specific and helpful error messages during ELF loading.kaf24@firebug.cl.cam.ac.uk2006-06-301-7/+14
| | | | | | | | | | | | Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com> Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
| * Allow 32-bit libxc to load 64-bit ELF files.kaf24@firebug.cl.cam.ac.uk2006-06-304-21/+20
| | | | | | | | | | | | | | | | | | | | | | - use 64-bit integral types for addresses in struct domain_start_info - use stroull() to parse 64-bit values - remove redundant _p(a) definition and add a comment - printf format changes for the new types Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com> Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
| * Fail save if we have an out-of-sync P2M/M2P (since otherwise the restore shand@kneesaa.uk.xensource.com2006-06-291-7/+12
| | | | | | | | | | | | | | | | | | | | | | | | will fail later). A better fix would be to tolerate temporary out-of-sync situations so we can make a nicer fix to the kunmap_atomic() iossue (c/f -unstable csets 10529 & 10533) but this requires some more thought. Signed-off-by: Steven Hand <steven@xensource.com>
| * Use address types in elf parser that match elf headers.kaf24@firebug.cl.cam.ac.uk2006-06-281-1/+1
| | | | | | | | | | | | | | | | Necessary if a long is a different size to addresses in elf file being parsed. From: Jimi Xenidis <jimix@watson.ibm.com> Signed-off-by: Keir Fraser <keir@xensource.com>
* | merge with xen-unstable.hgawilliam@xenbuild.aw2006-06-286-231/+2
|\|
| * [TOOLS] Remove plan9 loader code. Latest plan9 port uses linux builder.kfraser@dhcp93.uk.xensource.com2006-06-276-231/+2
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
* | merge with xen-unstable.hgawilliam@xenbuild.aw2006-06-234-11/+32
|\|
| * [TOOLS] Fix set_bit/clear bit for x86/64 in xc_linux_savekaf24@firebug.cl.cam.ac.uk2006-06-221-2/+2
| | | | | | | | | | | | From: John Byrne <john.l.byrne@hp.com> Signed-off-by: Keir Fraser <keir@xensource.com>
| * [TOOLS] Fix pagetable-pinning loop in xc_linux_restore.kaf24@firebug.cl.cam.ac.uk2006-06-221-9/+15
| | | | | | | | | | | | | | Previously it would not pin last PFN in physmap even if it was a pagetable page. Signed-off-by: Keir Fraser <keir@xensource.com>
| * [XEN] localtime support for paravirtualized guestskaf24@firebug.cl.cam.ac.uk2006-06-212-0/+15
| | | | | | | | | | | | | | | | | | | | It is quite minimal in its approach, satisfying the purposes of the paravirtualized NetWare operating system as well as any others that expect the time base to be provided in localtime. Signed-off-by: Bruce Rogers <brogers@novell.com>
* | [IA64] enable xenctx on ia64awilliam@xenbuild.aw2006-06-192-5/+5
|/ | | | | | Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
* merge with xen-unstable.hgawilliam@xenbuild.aw2006-06-155-18/+209
|\
| * [TOOLS] Introduce xc_evtchn_*() interface for interacting with /dev/xen/evtchn.kaf24@firebug.cl.cam.ac.uk2006-06-152-0/+172
| | | | | | | | | | | | | | | | No longer open the device as non-blocking: all reads immediately follow a select() on the device indicating it's ready to read. Signed-off-by: John Levon <john.levon@sun.com>
| * [TOOLS] Fix PAE save/restore/migrate: we must flushkfraser@dhcp93.uk.xensource.com2006-06-131-7/+13
| | | | | | | | | | | | | | all pending 'mmu updates' before moving page directories below 4GB. Signed-off-by: Keir Fraser <keir@xensource.com>
| * [TOOLS][BUILDER] Extend Elf header checks for multiple architectures.kfraser@dhcp93.uk.xensource.com2006-06-132-11/+24
| | | | | | | | | | | | Based on a patch from Hollis Blanchard. Signed-off-by: Keir Fraser <keir@xensource.com>
* | merge with xen-unstable.hgawilliam@xenbuild.aw2006-06-1320-271/+536
|\|
| * [TOOLS] Fix domain builder to carefully check that mapped memory areakaf24@firebug.cl.cam.ac.uk2006-06-081-11/+50
| | | | | | | | | | | | does not overflow and wrap to zero. Signed-off-by: Keir Fraser <keir@xensource.com>
| * [LIBXC] Convert all printf/fprintf uses to use a macro instead.kaf24@firebug.cl.cam.ac.uk2006-06-0715-116/+102
| | | | | | | | | | | | | | Thus all can be disabled at compile time. It would be easy to make enabling/disabling a run-time option too. Signed-off-by: Keir Fraser <keir@xensource.com>
| * Represent PFNs with their own type, rather than 'unsigned long'.kaf24@firebug.cl.cam.ac.uk2006-06-0615-92/+95
| | | | | | | | | | | | ('long' changes size and alignment between 32- and 64-bit ABIs.) Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
| * Create new vmassist type 'pae_extended_cr3'. Only advertisekaf24@firebug.cl.cam.ac.uk2006-06-057-31/+266
| | | | | | | | | | | | | | | | | | pae_pgdir_above_4gb tp guests that have enabled this vmassist. Control tools ensure all PAE page directories are below 4GB unless the vmassist is enabled (triggered via an extended-cr3 option in guest Elf header). Signed-off-by: Keir Fraser <keir@xensource.com>
| * [PAE] Fix tools to properly pack/unpack >4GB PAE CR3 values.kaf24@firebug.cl.cam.ac.uk2006-06-026-27/+29
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
* | [IA64] pass vcpu nr to guest firmwareawilliam@xenbuild.aw2006-06-051-5/+19
|/ | | | | | | | | | | | This patch pass the vcpus number to VT-i domain guest firmware, so that guest firmware can set SMP info accordingly, mostly in ACPI MADT table. This patch is required by VT-i SMP support. Signed-off-by: Yu Ke <ke.yu@intel.com>
* Use a global build configuration file, and rework libxc Makefile for PPC.kfraser@dhcp93.uk.xensource.com2006-05-317-64/+56
| | | | | Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
* Rename csched -> sched_credit/sched-credit in control plane.kaf24@firebug.cl.cam.ac.uk2006-05-272-10/+10
| | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
* [PAE] Allow pgdirs above 4GB for paravirt guests.kaf24@firebug.cl.cam.ac.uk2006-05-264-149/+11
| | | | | | | | **NOTE**: This obviates the need for lowmem_emergency_pool. Unpriv guests no longer need to be able to allocate memory below 4GB for PAE PDPTs. Signed-off-by: Keir Fraser <keir@xensource.com>
* New weighted fair-share CPU scheduler w/ automatic SMP load balancingack@kneesa.uk.xensource.com2006-05-263-0/+59
| | | | | Signed-off-by: Emmanuel Ackaouy <ack@xensource.com>
* Fix xc_tbuf.c indentation and stop turning failure to changekaf24@firebug.cl.cam.ac.uk2006-05-251-26/+30
| | | | | | trace-buffer size into a fatal error. Signed-off-by: Keir Fraser <keir@xensource.com>
* [PTRACE] Fix ptrace for hvm guests.kaf24@firebug.cl.cam.ac.uk2006-05-244-33/+48
| | | | | Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
* merge with xen-unstable.hgawilliam@xenbuild.aw2006-05-227-172/+227
|\
| * [LOADER] More sanity checks when parsing Elf images to avoidkaf24@firebug.cl.cam.ac.uk2006-05-211-5/+12
| | | | | | | | | | | | out-of-bounds array accesses when loading the image. Signed-off-by: Keir Fraser <keir@xensource.com>
| * [ACM] Replace the union structure parameter of the ACM hypercallskaf24@firebug.cl.cam.ac.uk2006-05-212-21/+12
| | | | | | | | | | | | | | | | | | | | | | | | with command-specific request structures. It aligns the ACM hypercalls with the way parameters are passed in the event channel hypercalls. Advantages include backward-compatibility regarding old guests when new calls are added and clarity of the code. Signed-off by: Reiner Sailer <sailer@us.ibm.com>
| * [LOADER] Another change to the elf_paddr_offset/virt_base logic.kaf24@firebug.cl.cam.ac.uk2006-05-211-21/+19
| | | | | | | | | | | | | | | | | | | | | | This avoids using zero to indicate 'undefined'. Instead we use an explicit boolean to indicate whether suitable defaults should be used. As well as making the logic clearer (I believe) it also avoids problems if anyone ever explicitly specifies virt_base (and also elf_paddr_offset) as zero. Signed-off-by: Keir Fraser <keir@xensource.com>
| * [LOADER] Remove check for VIRT_BASE existence: it's not neededkaf24@firebug.cl.cam.ac.uk2006-05-211-11/+14
| | | | | | | | | | | | | | | | | | to prevent xend crashign (when Aravindh's latest patch is applied) and breaks ia64. Also, ensure we set a reasonable default for elf_paddr_offset. Signed-off-by: Keir Fraser <keir@xensource.com>
| * [BUILDER] Always build initial PAE pagetables with a fourth mid-levelkaf24@firebug.cl.cam.ac.uk2006-05-201-10/+20
| | | | | | | | | | | | | | | | | | | | | | pgdir. This is required for Xen to be able to insert its own protected mappings. At the same time, clean up 32b and pae pagetable-size calculations to use the helper macro already used for x86/64. Based on an original patch from Bruce Rogers at Novell. Signed-off-by: Keir Fraser <keir@xensource.com>
| * Fix a crash in gdbserver-xen where it references unmapped memory ifkaf24@firebug.cl.cam.ac.uk2006-05-191-70/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the page directory / page table pages are not present (for example through dereferencing NULL in the gdb session). Changes: - map_domain_va_32 has been rewritten to match map_domain_va_pae and map_domain_va_64. - All three functions have been extended to handle multiple vCPUs, (untested, but shuld work), and check for _PAGE_PRESENT. - Keir's workaround for the compile error in map_domain_va_64 has been removed and hopefully fixed. Signed-Off-By: Simon Kagstrom <simon.kagstrom@bth.se>
| * Theoretically a 0 VIRT_BASE is okay. Change the bail code whenkaf24@firebug.cl.cam.ac.uk2006-05-171-6/+4
| | | | | | | | | | | | | | parsing elf headers to bail only when VIRT_BASE is not specified at all. Signed-off-by: Keir Fraser <keir@xensource.com>
| * This patch fixes the Linux builder so that it dies gracefully whenkaf24@firebug.cl.cam.ac.uk2006-05-172-1/+14
| | | | | | | | | | | | trying to load malformed ELF images. Signed-off-by: Aravindh Puthiyaparambil <aravindh.puthiyaparambil@unisys.com>
| * Fix the tools build:kaf24@firebug.cl.cam.ac.uk2006-05-161-0/+1
| | | | | | | | | | | | | | | | | | | | 1. xenctrl.h needs to include stddef.h to define size_t 2. tbctl is broken -- remove it since xenmon and xentrace both automatcially enable tracing now 3. Fix setsize after xc_tbug interface changes Signed-off-by: Keir Fraser <keir@xensource.com>
| * Use common code for enabling tracing via xenmon and xentrace, also fixingkaf24@firebug.cl.cam.ac.uk2006-05-162-24/+40
| | | | | | | | | | | | | | the last two remaining xc_private.h users outside of libxc. Signed-off-by: John Levon <john.levon@sun.com>
| * Fix 64-bit build. xc_ptrace() is still broken for x86/64 however.kaf24@firebug.cl.cam.ac.uk2006-05-141-1/+1
| | | | | | | | | | Signed-off-by: Keir Fraser <keir@xensource.com>
| * Fix an out-of-bounds memory access in xc_ptrace.c.kaf24@firebug.cl.cam.ac.uk2006-05-121-0/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | Currently, Xen always copies the entire 512 byte extended FPU state (fxsave) even if only the "regular" FPU state was requested. This breaks since the memory buffer allocated in linux-xen-low.c:regsets_fetch_inferior_registers() is only large enough to hold the "plain" FPU registers. Signed-Off-By: Simon Kagstrom <simon.kagstrom@bth.se>
| * Re-enables ptrace for paravirtualized guests.kaf24@firebug.cl.cam.ac.uk2006-05-121-31/+41
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Changes: - Added to_ma function which translates a physical address to a machine address for HVM guests and just returns the address for PV guests. - Use to_ma() in map_domain_va_32, map_domain_va_pae and map_domain_va_64 to abstract away differences between HVM and PV guests. - (From Keir, Ryan) Export CR0 to PV guests as well. I've removed the address checks against 0 since the last version since physical/machine address 0 should be valid. Invalid translations should be catched in xc_map_foreign_domain. Signed-Off-By: Simon Kagstrom <simon.kagstrom@bth.se>
| * Add support to domain builders for loading kernels with physical addresses ↵cl349@firebug.cl.cam.ac.uk2006-05-112-15/+30
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | in the elf paddr and entry fields. Add a new __xen_guest header field to distinguish between kernels with the previous use of the paddr field and the new use. Add a new __xen_guest header field to control the kernel entry point, since the elf header entry field now points to a physical address. This header field is also useful for supporting alternative entry points in kernel images which run both on xen and native. Also add a kernel config option to control whether the resulting kernel should include compatibility code to run on Xen 3.0.2 or whether such code such be left out, resulting in a kernel which will only run on newer Xen versions. Default to having compatibility enabled. Kernels built with the new use of the elf header fields would otherwise not work on Xen versions prior to this changeset. Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>