]> xenbits.xensource.com Git - xen.git/log
xen.git
13 years agosvm: Fake out the Bus Unit Config MSR on revF AMD CPUs
George Dunlap [Thu, 8 Mar 2012 09:17:21 +0000 (09:17 +0000)]
svm: Fake out the Bus Unit Config MSR on revF AMD CPUs

Win2k8 x64 reads this MSR on revF chips, where it wasn't publically
available; it uses a magic constant in %rdi as a password, which we
don't have in rdmsr_safe().  Since we'll ignore the later writes, just
use a plausible value here (the reset value from rev10h chips) if the
real CPU didn't provide one.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agox86: Add more specific logging for get_page_from_l1e failures
George Dunlap [Thu, 8 Mar 2012 09:16:09 +0000 (09:16 +0000)]
x86: Add more specific logging for get_page_from_l1e failures

This patch should clarify which of the two possible reasons cause the
messages
of the form "(XEN) mm.c:908:d1 Error getting mfn 29b2b (pfn
5555555555555555)
from L1 entry 0000000029b2b067 for l1e_owner=1, pg_owner=1".

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agox86: Reduce severity of hvm_op warnings
George Dunlap [Thu, 8 Mar 2012 09:15:26 +0000 (09:15 +0000)]
x86: Reduce severity of hvm_op warnings

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agox86: Make sure log-dirty is turned off before trying to dismantle it
George Dunlap [Thu, 8 Mar 2012 09:13:25 +0000 (09:13 +0000)]
x86: Make sure log-dirty is turned off before trying to dismantle it

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agohvm: Add command line option to enable ASID support -- on by default
George Dunlap [Thu, 8 Mar 2012 09:10:32 +0000 (09:10 +0000)]
hvm: Add command line option to enable ASID support -- on by default

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Signed-off-by: Keir Fraser <keir@xen.org>
13 years agoLow mem virq incremental adjustments
Andres Lagar-Cavilla [Thu, 8 Mar 2012 09:05:22 +0000 (09:05 +0000)]
Low mem virq incremental adjustments

Consider tmem before firing the virq.

Add .gitignore rune.

Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Acked-by: Dan Magenheimer <dan.magenheimer@oracle.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoprovide a single, common implementation for get_order_from_{bytes,pages}()
Jan Beulich [Wed, 7 Mar 2012 10:50:31 +0000 (11:50 +0100)]
provide a single, common implementation for get_order_from_{bytes,pages}()

All three per-architecture implementations were identical, and I cannot
see how future architectures would need any sort of customization here
(the only per-architecture aspect here is the actual PAGE_SHIFT value).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
13 years agopassthrough: fix domain ref leak after 24888:71159fb049f2
Jan Beulich [Wed, 7 Mar 2012 09:59:18 +0000 (10:59 +0100)]
passthrough: fix domain ref leak after 24888:71159fb049f2

As pointed out by Keir.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
13 years agoRevert 24973:50a70b652b43 "x86: Use deep C states for off-lined CPUs"
Keir Fraser [Wed, 7 Mar 2012 09:12:23 +0000 (09:12 +0000)]
Revert 24973:50a70b652b43 "x86: Use deep C states for off-lined CPUs"

applied already

Signed-off-by: Keir Fraser <keir@xen.org>
13 years agoDOCS: Initial document regarding Xen's command line parameters
Andrew Cooper [Wed, 7 Mar 2012 07:44:33 +0000 (07:44 +0000)]
DOCS: Initial document regarding Xen's command line parameters

Still a work in progress, but submitted as a start.

Changes since v1:
  - Include all up to date information from the wiki.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agobuild: Don't remove user-supplied xen-version during make clean
George Dunlap [Wed, 7 Mar 2012 07:43:02 +0000 (07:43 +0000)]
build: Don't remove user-supplied xen-version during make clean

xen/Makefile is designed to allow the user to supply a file named
xen/xen-include to change the format of xen version strings.
Unfortunately, "make clean" removes xen/xen*, which will remove this
file.

Make the clean process more targeted.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agobuild: Add xenversion as a top-level target
George Dunlap [Wed, 7 Mar 2012 07:42:09 +0000 (07:42 +0000)]
build: Add xenversion as a top-level target

We already have xenversion as a target in the xen subdirectory;
simply extend it so that "make xenversion" does what you'd expect.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoRTC: Add alarm support
Yang Zhang [Wed, 7 Mar 2012 07:38:05 +0000 (07:38 +0000)]
RTC: Add alarm support

Use a timer to emulate update cycle. The timer runs only when AIE is
set.

Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoRTC: Add RTC update-ended interrupt support
Yang Zhang [Wed, 7 Mar 2012 07:37:21 +0000 (07:37 +0000)]
RTC: Add RTC update-ended interrupt support

Use a timer to emulate update cycle. When update cycle ended and UIE
is set, raise an interrupt. The timer runs only when AF is cleared.

Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoRTC: Add UIP(update in progress) check logic
Yang Zhang [Wed, 7 Mar 2012 07:36:15 +0000 (07:36 +0000)]
RTC: Add UIP(update in progress) check logic

The UIP(update in progress) is set when RTC is in updating. And the
update cycle begins 244us later after UIP is set.

Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoRTC: fix 12-hour mode
Yang Zhang [Wed, 7 Mar 2012 07:34:55 +0000 (07:34 +0000)]
RTC: fix 12-hour mode

Hours in 12-hour mode are in the 1-12 range, not 0-11.

Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoRTC: use offset to caculate rtc clock
Yang Zhang [Wed, 7 Mar 2012 07:34:20 +0000 (07:34 +0000)]
RTC: use offset to caculate rtc clock

There has no need to run two periodic timer to update RTC time.
Use the offset instead.

Signed-off-by: Yang Zhang <yang.z.zhang@Intel.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agox86: Use deep C states for off-lined CPUs
Boris Ostrovsky [Wed, 7 Mar 2012 07:30:30 +0000 (07:30 +0000)]
x86: Use deep C states for off-lined CPUs

Currently when a core is taken off-line it is placed in C1 state
(unless MONITOR/MWAIT is used). This patch allows a core to go to
deeper C states resulting in significantly higher power savings.

Signed-off-by: Boris Ostrovsky <boris.ostrovsky@amd.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoAdd gtags target for xen/Makefile. Also update .hgignore.
Wei Liu [Wed, 7 Mar 2012 07:28:12 +0000 (07:28 +0000)]
Add gtags target for xen/Makefile. Also update .hgignore.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agox86/xenoprof: fix 32-bit guest stack handling after c/s 24537:3c0a533d3af0
Jan Beulich [Tue, 6 Mar 2012 15:43:01 +0000 (16:43 +0100)]
x86/xenoprof: fix 32-bit guest stack handling after c/s 24537:3c0a533d3af0

32-bit guests don't have 64-bit precudrure return addresses - both
elements of struct frame_head_32bit should be 32 bits wide, not just
the frame link pointer.

Further, consolidate the whole handling here (also in the native size
guest case) to properly use guest handles and guest memory accessors.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
13 years agox86/cpuidle: deny access to the I/O port used for EM_SYSIO
Jan Beulich [Tue, 6 Mar 2012 15:41:41 +0000 (16:41 +0100)]
x86/cpuidle: deny access to the I/O port used for EM_SYSIO

Nothing, not even Dom0, should fiddle with this.

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
13 years agox86/cpuidle: restrict scope of mwait_ptr in acpi_dead_idle()
Jan Beulich [Tue, 6 Mar 2012 15:11:59 +0000 (16:11 +0100)]
x86/cpuidle: restrict scope of mwait_ptr in acpi_dead_idle()

... just to make sure it doesn't get used improperly (resulting from
the discussion around what became c/s 24968:8964c223836c).

Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
13 years agox86: Use deep C states for off-lined CPUs
Boris Ostrovsky [Tue, 6 Mar 2012 14:51:33 +0000 (15:51 +0100)]
x86: Use deep C states for off-lined CPUs

Currently when a core is taken off-line it is placed in C1 state (unless
MONITOR/MWAIT is used). This patch allows a core to go to deeper C states
resulting in significantly higher power savings.

Signed-off-by: Boris Ostrovsky <boris.ostrovsky@amd.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
13 years agolibxl: only set b_info->u.hvm.bios if type if HVM
Ian Campbell [Fri, 2 Mar 2012 12:33:25 +0000 (12:33 +0000)]
libxl: only set b_info->u.hvm.bios if type if HVM

This fixes a PV guest breakage causes by 24932:6eac4a1ee646 "libxl: Select BIOS
using libxl_domain_build_info_setdefaults".

I have also included a sanity check on b_info->type.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Campbell <ian.campbell@citrix.com>
13 years agoQEMU_TAG update
Ian Jackson [Thu, 1 Mar 2012 19:00:09 +0000 (19:00 +0000)]
QEMU_TAG update

13 years agoadd new bootloader xenpvnetboot for pv guest
Zhigang Wang [Thu, 1 Mar 2012 18:54:37 +0000 (18:54 +0000)]
add new bootloader xenpvnetboot for pv guest

`xenpvnetboot' supports getting boot images from following locations:

 - http://host/path
 - https://host/path
 - ftp://host/path
 - file:///path
 - tftp://host/path
 - nfs:host:/path
 - /path
 - /path/file.iso
 - /path/filesystem.img
 - /dev/sda1
 - nfs+iso:host:/path/file.iso
 - nfs+iso:host:/path/filesystem.img

To use it, make `xenpvnetboot' as bootloader for PV guest::

    bootloader = '/usr/bin/xenpvnetboot'

To get boot images from various locations, set the right bootloader
arguments, e.g.:

    bootloarder_args = ['--location=http://192.168.0.1/fedora/x86_64']
    bootloarder_args = ['--location=ftp://192.168.0.1/fedora/x86_64']
    bootloarder_args = ['--location=file:///fedora/x86_64']
    bootloarder_args = ['--location=tftp://192.168.0.1/fedora/x86_64']
    bootloarder_args = ['--location=/fedora/x86_64']
    bootloarder_args = ['--location=/fedora/Fedora-16-x86_64-DVD.iso']
    bootloarder_args = ['--location=nfs:192.168.0.1:/fedora/x86_64']
    bootloarder_args = ['--location=nfs+iso:192.168.0.1:/fedora/Fedora-16-x86_64-DVD.iso']

You can use `kernel' and `ramdisk' to specify the relative path of
boot kernel and ramdisk. `xenpvnetboot' will join them with the
location to find the boot kernel and ramdisk, e.g.:

    kernel = 'images/pxeboot/vmlinuz'
    ramdisk = 'images/pxeboot/initrd.img'
    bootloarder_args = ['--location=http://192.168.0.1/fedora/x86_64']

    kernel = 'fedora/x86_64/images/pxeboot/vmlinuz'
    ramdisk = 'fedora/x86_64/images/pxeboot/initrd.img'
    bootloarder_args = ['--location=http://192.168.0.1/']

You can also omit the `--location' option and specify the full URL for
`kernel' and `ramdisk' directly, e.g.:

    kernel = 'http://192.168.0.1/fedora/x86_64/images/pxeboot/vmlinuz'
    ramdisk = 'http://192.168.0.1/fedora/x86_64/images/pxeboot/initrd.img'

If only `--location' is specified and `kernel' and `ramdisk' are not
specified, `xenpvnetboot' will search the following places for boot
images from the location::

    ('images/xen/vmlinuz', 'images/xen/initrd.img'), # Fedora <= 10 and OL = 5
    ('boot/i386/vmlinuz-xen', 'boot/i386/initrd-xen'), # openSUSE >= 10.2 and SLES >= 10
    ('boot/x86_64/vmlinuz-xen', 'boot/x86_64/initrd-xen'), # openSUSE >= 10.2 and SLES >= 10
    ('current/images/netboot/xen/vmlinuz', 'current/images/netboot/xen/initrd.gz'), # Debian
    ('images/pxeboot/vmlinuz', 'images/pxeboot/initrd.img'), # Fedora >=10 and OL >= 6
    ('isolinux/vmlinuz', 'isolinux/initrd.img'), # Fedora >= 10 and OL >= 6

`xenpvnetboot' requires python module `urlgrabber'
http://urlgrabber.baseurl.org/.

Signed-off-by: Zhigang Wang <zhigang.x.wang@oracle.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agoxenstore: Portability: do not build init-xenstore-domain if stubdom disabled
Christoph Egger [Thu, 1 Mar 2012 18:52:35 +0000 (18:52 +0000)]
xenstore: Portability: do not build init-xenstore-domain if stubdom disabled

Build stubxenstore only when building stubdomains.
Fixes build failure on platforms w/o the relevant ioctl.

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: Implement libxl_sched_credit_param_[gs]et
George Dunlap [Thu, 1 Mar 2012 18:22:01 +0000 (18:22 +0000)]
libxl: Implement libxl_sched_credit_param_[gs]et

Implement functions to set credit scheduler global parameters.

Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agoarm: compile libxc
Stefano Stabellini [Thu, 1 Mar 2012 17:37:03 +0000 (17:37 +0000)]
arm: compile libxc

Introduce an empty implementation of the arch specific ARM functions in
xc_core_arm.c and xc_core_arm.h; define barriers on ARM.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agoarm: add stub hvm/save.h
Stefano Stabellini [Thu, 1 Mar 2012 17:37:03 +0000 (17:37 +0000)]
arm: add stub hvm/save.h

From: Ian Campbell <ian.campbell@citrix.com>

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
13 years agotools: fix python version checking issue
Yongjie Ren [Thu, 1 Mar 2012 17:23:51 +0000 (17:23 +0000)]
tools: fix python version checking issue

Even if python version is 2.4.3 which is newer than the required
version 2.3, the configure script still raises a version issue.  I
tested my patch with python 2.6.6 and 2.4.3. It will fix a syntax
error like the following.

 checking for python version >= 2.3 ... Traceback (most recent call last):
   File "<string>", line 1, in ?
 TypeError: 'str' object is not callable
 no
 configure: error: Python 2.4.3 is too old, minimum required version is 2.3

Signed-off-by: Yongjie Ren <yongjie.ren@intel.com>
Acked-by: Roger Pau Monne <roger.pau@entel.upc.edu>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agobuild: autoconf: fix libdir detection
Roger Pau Monne [Thu, 1 Mar 2012 16:59:33 +0000 (16:59 +0000)]
build: autoconf: fix libdir detection

If user specifies a libdir it is used, if no libdir is specified
configure checks if $exec_prefix/lib64 is a directory and uses that,
if not lib is used.

$prefix is set by passing the command line option or by default when
calling AC_OUTPUT, but since AC_OUTPUT is called at the end, this is
not really helpful, so we have to set $exec_prefix manually to the
correct value, either $prefix if different than NONE or
$ac_default_prefix.

Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agodocs: xen-headers: Remove hard tabs
Ian Jackson [Thu, 1 Mar 2012 16:51:39 +0000 (16:51 +0000)]
docs: xen-headers: Remove hard tabs

Remove hard tabs from the Perl script.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Cc: Ian Campbell <Ian.Campbell@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
13 years agodocs: xen-headers: Annotate typedefs
Ian Jackson [Thu, 1 Mar 2012 16:51:39 +0000 (16:51 +0000)]
docs: xen-headers: Annotate typedefs

Parse (some) typedef statements.  (Make type names links to the
underlying struct if there is one, rather than to just the typedef.)

Also, exclude the new arch-arm headers.

Signed-off-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Cc: Ian Campbell <Ian.Campbell@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
13 years agoMerge
Ian Jackson [Thu, 1 Mar 2012 16:48:36 +0000 (16:48 +0000)]
Merge

13 years agolowmemd: Fix build when xs.h has not been previously installed.
Keir Fraser [Thu, 1 Mar 2012 16:43:46 +0000 (16:43 +0000)]
lowmemd: Fix build when xs.h has not been previously installed.

Signed-off-by: Keir Fraser <keir@xen.org>
13 years agobuild: autoconf: remove (yet another) brctl leftover
Roger Pau Monne [Thu, 1 Mar 2012 16:41:56 +0000 (16:41 +0000)]
build: autoconf: remove (yet another) brctl leftover

Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agoLowmemd: Simple demo code to show use of VIRQ_ENOMEM
Andres Lagar-Cavilla [Thu, 1 Mar 2012 16:41:39 +0000 (16:41 +0000)]
Lowmemd: Simple demo code to show use of VIRQ_ENOMEM

Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agobuild: autoconf: remove python xml check
Roger Pau Monne [Thu, 1 Mar 2012 16:41:15 +0000 (16:41 +0000)]
build: autoconf: remove python xml check

Remove the xml module check from autoconf and move it to xend init
script (in a later patch), since it's a run time dependency.

Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agoGlobal virq for low memory situations
Andres Lagar-Cavilla [Thu, 1 Mar 2012 16:40:45 +0000 (16:40 +0000)]
Global virq for low memory situations

When a low memory threshold on the Xen heap is reached, we fire a
global dom0 virq. If someone's listening, they can free up some more
memory.

The low threshold is configurable via the command line token
'low_mem_virq_limit", and defaults to 64MiB. If the user specifies
zero via the command line, the virq is disabled.

We define a new virq VIRQ_ENOMEM. Potential listeners include
squeezed, xenballoond, or anything else that can be fired through
xencommons.

We error-check the low mem virq against initial available heap (after
dom0 allocation), to avoid firing immediately.

Virq issuing is controlled by a hysteresis algorithm: when memory dips
below a threshold, the virq is issued and the next virq will fire when
memory shrinks another order of magnitude. The virq will not fire
again in the current "band" until memory grows over the next higher
order of magnitude.

Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoGrant table: fix a bug when grant copying a previous grant mapped page.
Wei Liu [Thu, 1 Mar 2012 16:37:18 +0000 (16:37 +0000)]
Grant table: fix a bug when grant copying a previous grant mapped page.

In grant table version 2, when we create a non-transitive mapping from
DomU to Dom0, we need to set active entry's trans_domain and
trans_ref.  Otherwise when we grant copy from this previous mapped
ref, preemption count will get messed up.

See changeset 22994:299ed79acecf for more information.

Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoamd iommu: Introduce a new lock for event and ppr logging
Wei Wang [Thu, 1 Mar 2012 16:35:54 +0000 (16:35 +0000)]
amd iommu: Introduce a new lock for event and ppr logging

iommu->lock is used with irq disabled, so it cannot be used to protect
ppr log.  Otherwise, after c/s 24770, get_gfn will trigger a BUG() if
called by parse_ppr_log_entry(). This patch adds an additional lock to
protect ppr and event pointers in iommu_read_log().

signed-off-by: Wei Wang <wei.wang2@amd.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agox86,tools/libxc: expose HLE/RTM features to pv and hvm
Liu, Jinsong [Thu, 1 Mar 2012 16:31:52 +0000 (16:31 +0000)]
x86,tools/libxc: expose HLE/RTM features to pv and hvm

Intel recently release 2 new features, HLE and TRM.
Refer to http://software.intel.com/file/41417.
This patch expose them to pv and hvm

Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agohvm: correct RTC time offset update error due to tm->tm_year
Annie Li [Thu, 1 Mar 2012 16:29:59 +0000 (16:29 +0000)]
hvm: correct RTC time offset update error due to tm->tm_year

tm->tm_year in rtc.c is year number offsetting from 1900. So it is
necessary to add the offset 1900 when calling mktime funtion in
Xen. Otherwise, the calculation result of mktime is incorrect.

Signed-off-by: Annie Li <annie.li@oracle.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agobuild: autoconf: remove ip check
Roger Pau Monne [Thu, 1 Mar 2012 16:19:29 +0000 (16:19 +0000)]
build: autoconf: remove ip check

ip is a run-time dependency, and it is not needed to build Xen tools.

Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agohcall: markup the event channel hypercalls to improve generated docs
Ian Campbell [Thu, 1 Mar 2012 16:03:21 +0000 (16:03 +0000)]
hcall: markup the event channel hypercalls to improve generated docs

As part of this I looked through the relevant chapter from interfaces.tex (from
4.1, deleted in unstable) to ensure no critical information was missing.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Keir Fraser <keir@xen.org>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agoxenpaging: remove obsolete XENMEM_paging_op_resume
Olaf Hering [Thu, 1 Mar 2012 15:58:02 +0000 (15:58 +0000)]
xenpaging: remove obsolete XENMEM_paging_op_resume

With changeset 24364:0964341efd65 an event channel based notification of
new responses in the ringbuffer is implemented. This makes the memevent
interface obsolete. Currently a call to p2m_mem_paging_resume() is
triggered twice by xenpaging, once per memevent and once per even
channel. In practice this double call does not lead to issues because
p2m_mem_paging_resume() processes only available events.

xenpaging used the event channel notification since the beginning, but
it was a no-op until changeset mentioned above. This change removes the
unneeded XENMEM_paging_op_resume functionality. Pagers are notified via
an event channel of new requests, and now they are required to notify
the hypervisor about their responses also with an event channel.

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Acked-by: Tim Deegan <tim@xen.org>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agobuild: rerun autoconf
Ian Jackson [Thu, 1 Mar 2012 15:23:31 +0000 (15:23 +0000)]
build: rerun autoconf

24942:d70b4a1155e3 contains changes to configure.in and thus we need
to rerun autogen.sh.

Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agobuild: remove hypervisor-only configuration from tools/configure
Daniel De Graaf [Thu, 1 Mar 2012 15:22:09 +0000 (15:22 +0000)]
build: remove hypervisor-only configuration from tools/configure

When adding autoconf support, the configuration options for XSM and
FLASK_ENABLE were incorrectly removed from Config.mk and added to the
tools configuration. Since these are hypervisor configuration options,
they should not depend on running tools configuration.

Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxc: add MMIO hole size parameter to xc_hvm_build()
David Vrabel [Thu, 1 Mar 2012 15:18:08 +0000 (15:18 +0000)]
libxc: add MMIO hole size parameter to xc_hvm_build()

Add a parameter for the MMIO hole size when building a HVM domain.

This is useful for specifying a larger than normal MMIO hole to ensure
that no PCIe device's MMIO region overlaps with RAM in a guest's
physical address space.  This is needed on certain systems with PCIe
switches with a broken ACS capability.  On these systems, if a device
downstream of the switch attempts a DMA to a guest physical address
that overlaps with the MMIO region of another downstream device, then
the switch routes the transfer directly to the device and the read or
write never hits RAM.

Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxc: pass arguments to xc_hvm_build() in a structure
David Vrabel [Thu, 1 Mar 2012 15:16:22 +0000 (15:16 +0000)]
libxc: pass arguments to xc_hvm_build() in a structure

To allow new parameters to be added to the xc_hvm_build*() family of
functions, pass them in a structure.  Make the other variants fill in
the structure and call xc_hvm_build() (except for xc_hvm_build_mem()
which had no users and is removed).

The units of the mem_size and mem_target arguments are in bytes (not
MiB like the old functions).

Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agoMerge
Ian Jackson [Thu, 1 Mar 2012 12:31:15 +0000 (12:31 +0000)]
Merge

13 years agolibxl: autogenerate libxl_FOO_init and libxl_FOO_init_FIELD
Ian Campbell [Thu, 1 Mar 2012 12:26:15 +0000 (12:26 +0000)]
libxl: autogenerate libxl_FOO_init and libxl_FOO_init_FIELD

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: idl: generate KeyedUnion key member as part of the KeyedUnion
Ian Campbell [Thu, 1 Mar 2012 12:26:15 +0000 (12:26 +0000)]
libxl: idl: generate KeyedUnion key member as part of the KeyedUnion

Rather than specifying it twice in the IDL.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: Make IDL KeyedUnion keyvar an idl.Field
Ian Campbell [Thu, 1 Mar 2012 12:26:15 +0000 (12:26 +0000)]
libxl: Make IDL KeyedUnion keyvar an idl.Field

This is more logical than having keyvar_name and keyvar_type members.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: add libxl_domain_build_info_init_type
Ian Campbell [Thu, 1 Mar 2012 12:26:15 +0000 (12:26 +0000)]
libxl: add libxl_domain_build_info_init_type

Use instead of parameterising libxl_domain_build_info_init. This allows callers
to initialise a libxl_domain_build_info but not to commit to a particular type
later on (e.g. after they've parsed the domain config)

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: switch device model selection over to libxl_defbool
Ian Campbell [Thu, 1 Mar 2012 12:26:15 +0000 (12:26 +0000)]
libxl: switch device model selection over to libxl_defbool

This allows it to be set via the _init/_setdefault methods.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
[since last v -- ERROR_INVAL on stubdomains + !traditional qemu]

13 years agolibxl: do not explicitly initialise members of build info to zero
Ian Campbell [Thu, 1 Mar 2012 12:26:15 +0000 (12:26 +0000)]
libxl: do not explicitly initialise members of build info to zero

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: Select BIOS using libxl_domain_build_info_setdefaults
Ian Campbell [Thu, 1 Mar 2012 12:26:15 +0000 (12:26 +0000)]
libxl: Select BIOS using libxl_domain_build_info_setdefaults

Remove libxl__domain_bios -- it is no longer necessary.

Also we appear to have been setting the xenstore key even for device models for
PV guests -- stop doing that.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: use defbool for graphics related options
Ian Campbell [Thu, 1 Mar 2012 12:26:15 +0000 (12:26 +0000)]
libxl: use defbool for graphics related options

This allows them to be set via the _init/_setdefault methods.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: switch generation id control to libxl_defbool.
Ian Campbell [Thu, 1 Mar 2012 12:26:15 +0000 (12:26 +0000)]
libxl: switch generation id control to libxl_defbool.

This allows it to be set via the _init/_setdefault methods.

Also switch the sense of the variable in the libxl API, since once you add
defbool to the mix the double negatives become even more confusing.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: Paul Durrant <Paul.Durrant@citrix.com>
13 years agolibxl: make boolean members of libxl_domain_build_info into libxl_defbool
Ian Campbell [Thu, 1 Mar 2012 12:26:15 +0000 (12:26 +0000)]
libxl: make boolean members of libxl_domain_build_info into libxl_defbool

This allows them to be set via the _init/_setdefault methods.

This just covers the obvious ones.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: make boolean members of libxl_domain_create_info into libxl_defbool
Ian Campbell [Thu, 1 Mar 2012 12:26:14 +0000 (12:26 +0000)]
libxl: make boolean members of libxl_domain_create_info into libxl_defbool

This allows them to be set via the _init/_setdefault methods.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: add new "defbool" built in type.
Ian Campbell [Thu, 1 Mar 2012 12:26:14 +0000 (12:26 +0000)]
libxl: add new "defbool" built in type.

This type is a but like a "boolean" but with a third state "default" (so really
I suppose it's a tristate).

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: pci: use _init/_setdefault
Ian Campbell [Thu, 1 Mar 2012 12:26:14 +0000 (12:26 +0000)]
libxl: pci: use _init/_setdefault

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: make libxl_device_console internal
Ian Campbell [Thu, 1 Mar 2012 12:26:14 +0000 (12:26 +0000)]
libxl: make libxl_device_console internal

consoles are not directly exposed to users of the library and there are no API
functions for manipluating them (only the console_exec function). Rather than
commit to a particular API now make the type internal.

When a user does come along it is much easier to add a completely new API
rather than to fix an existing broken one. It's easier to do this in a manner
which users of the library can cope with in a compatible way e.g. adding a new
API is easier to check for with ./configure.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: vfb/vkb: use _init/_setdefault
Ian Campbell [Thu, 1 Mar 2012 12:26:14 +0000 (12:26 +0000)]
libxl: vfb/vkb: use _init/_setdefault

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: nic: use _init/_setdefault
Ian Campbell [Thu, 1 Mar 2012 12:26:14 +0000 (12:26 +0000)]
libxl: nic: use _init/_setdefault

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: disk: use _init/_setdefault
Ian Campbell [Thu, 1 Mar 2012 12:26:14 +0000 (12:26 +0000)]
libxl: disk: use _init/_setdefault

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: introduce a descriminating default value for memkb fields.
Ian Campbell [Thu, 1 Mar 2012 12:26:14 +0000 (12:26 +0000)]
libxl: introduce a descriminating default value for memkb fields.

Consitently make such fields 64 bit values as used by dominfo.

It is not clear if ->video_memkb and/or shadow_memkb shouldn't be part of
->u.hvm but I have not changed that here.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: drop 8M slack for PV guests.
Ian Campbell [Thu, 1 Mar 2012 12:26:14 +0000 (12:26 +0000)]
libxl: drop 8M slack for PV guests.

This serves no purpose. It relates to the old 8M to "account for backend
allocations" which we used to add. This leaves a bit of unpopulated space in
the Pseudo-physical address space which can be used by backends when mapping
foreign memory. However 8M is not representative of that any more and modern
kernels do not operate in this way anyway.

I suspect an argument could be made for removing this from the libxl API
altogether but instead lets just set the overhead to 0.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: use an explicit LIBXL_TIMER_MODE_DEFAULT value
Ian Campbell [Thu, 1 Mar 2012 12:26:13 +0000 (12:26 +0000)]
libxl: use an explicit LIBXL_TIMER_MODE_DEFAULT value

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: provide _init and _setdefault for libxl_domain_build_info.
Ian Campbell [Thu, 1 Mar 2012 12:26:13 +0000 (12:26 +0000)]
libxl: provide _init and _setdefault for libxl_domain_build_info.

Some fields require further scaffolding before they can use the
_init/_setdefault scheme and are handled in later patches.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: provide _init and _setdefault for libxl_domain_create_info.
Ian Campbell [Thu, 1 Mar 2012 12:26:13 +0000 (12:26 +0000)]
libxl: provide _init and _setdefault for libxl_domain_create_info.

Some fields require further scaffolding before they can use the
_init/_setdefault scheme and are handled in later patches.

It doesn't seem reasonable for the library to pick a default for the domain
type so reject as invalid.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: Document _init/_dispose/_setdefault functions.
Ian Campbell [Thu, 1 Mar 2012 12:26:13 +0000 (12:26 +0000)]
libxl: Document _init/_dispose/_setdefault functions.

Subsequent patches will transition to them.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: generate a _dispose function for all Aggregate types
Ian Campbell [Thu, 1 Mar 2012 12:26:13 +0000 (12:26 +0000)]
libxl: generate a _dispose function for all Aggregate types

Don't special case types which we happen to know do not contain allocated data
such that in the future if this changes we do not need to add an API. Although
there is likely to be latent bugs in callers due to this having the API in old
libraries mean that when callers are fixed they will not need to make special
arrangements to handle old and new versions of the library.

Adds dispose functions for:
 - libxl_dominfo
 - libxl_cpupoolinfo
 - libxl_physinfo
 - libxl_sched_credit
 - libxl_sched_credit2

I have attempted to fix any latent bugs in xl by inspection but have not
bothered with libxl (on the basis that internally the library is allowed to
make these sorts of assumptions and because it was looking like a very invasive
job and that more would only creep in anyway).

Several callsites use libxl_domain_info to check for the presence of a domain
and throw away the actual info. As a convenience accept a NULL info pointer and
just return the status.

Also fix a memory leak in libxl_domain_list.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: allow specification of testidl random seed.
Ian Campbell [Thu, 1 Mar 2012 12:26:13 +0000 (12:26 +0000)]
libxl: allow specification of testidl random seed.

Useful if you are interested in before/after results of changing the IDL or
generator.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: Remove xen/sched.h from public interface
Ian Campbell [Thu, 1 Mar 2012 12:26:13 +0000 (12:26 +0000)]
libxl: Remove xen/sched.h from public interface

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agolibxl: remove sysctl.h from public interface
Ian Campbell [Thu, 1 Mar 2012 12:26:13 +0000 (12:26 +0000)]
libxl: remove sysctl.h from public interface

Using sysctl.h is restricted to "node control tools only" and requires magic
defines. Therefore make its use internal to libxl.

Also removes an indirect include of domctl.h which has the same restrction.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
13 years agoconfigure: do not require Bison or Flex
Ian Campbell [Wed, 29 Feb 2012 17:01:41 +0000 (17:01 +0000)]
configure: do not require Bison or Flex

This isn't required because we also checkin the generated files.  A
more complete fix might also allow the user to force regeneration but
I didn't bother here.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl, xl: Add the bios option to specify the bios to load
Attilio Rao [Wed, 29 Feb 2012 16:25:38 +0000 (16:25 +0000)]
libxl, xl: Add the bios option to specify the bios to load

Signed-off-by: Attilio Rao <attilio.rao@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agoRevert 24897:f25e5785327e "Export configure variables to hypervisor build"
Keir Fraser [Wed, 29 Feb 2012 15:11:31 +0000 (15:11 +0000)]
Revert 24897:f25e5785327e "Export configure variables to hypervisor build"

Signed-off-by: Keir Fraser <keir@xen.org>
13 years agotools: xencommons: revert accidental hunk in 24905:2b5cf6bde62d
Ian Jackson [Wed, 29 Feb 2012 14:38:28 +0000 (14:38 +0000)]
tools: xencommons: revert accidental hunk in 24905:2b5cf6bde62d

24905:2b5cf6bde62d accidentally contained a change to
tools/hotplug/Linux/init.d/xencommons.  That change is probably OK but
should not be in 24905 so remove it.

Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agoinstall: remove old checks from install.sh
Roger Pau Monne [Wed, 29 Feb 2012 14:36:04 +0000 (14:36 +0000)]
install: remove old checks from install.sh

Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: use libxl wrapper for yajl_gen_alloc
Olaf Hering [Wed, 29 Feb 2012 14:32:51 +0000 (14:32 +0000)]
libxl: use libxl wrapper for yajl_gen_alloc

To fix compile errors with libyajl2:
 * use libxl_yajl_gen_alloc()
 * use libxl_yajl_length
 * link xl with -lyajl for yajl_gen_string()

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agolibxl: rename libxl__yajl_gen_alloc
Olaf Hering [Wed, 29 Feb 2012 14:31:59 +0000 (14:31 +0000)]
libxl: rename libxl__yajl_gen_alloc

libxl__yajl_gen_alloc() is called by generic code,
rename it to libx_yajl_gen_alloc().

Signed-off-by: Olaf Hering <olaf@aepfle.de>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
13 years agovpmu: No need for two initialisation functions
Dietmar Hahn [Wed, 29 Feb 2012 13:51:42 +0000 (13:51 +0000)]
vpmu: No need for two initialisation functions

With the changeset 24529:87854d3bed93 we got 2 initialisation
functions for the arch specific stuff. This is no more needed.

Signed-off-by: Dietmar Hahn <dietmar.hahn@ts.fujitsu.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agovpmu: cleanup structures
Dietmar Hahn [Wed, 29 Feb 2012 13:51:12 +0000 (13:51 +0000)]
vpmu: cleanup structures

- struct msr_load_store_entry is unused
- struct pmumsr is only used in the vmx part

Signed-off-by: Dietmar Hahn <dietmar.hahn@ts.fujitsu.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoxsm: expose context of event channel peers
Daniel De Graaf [Wed, 29 Feb 2012 13:48:41 +0000 (13:48 +0000)]
xsm: expose context of event channel peers

This hypercall allows a domain to identify the security context of a
domain that it is communicating with using the interdomain event
channel that it is using for the communication. This can be used to
augment Xen's security permissions with intra-domain security checks.

Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoxsm/flask: buffer AVC messages for output
Daniel De Graaf [Wed, 29 Feb 2012 13:47:41 +0000 (13:47 +0000)]
xsm/flask: buffer AVC messages for output

When multiple CPUs hit an AVC audit message, the resulting output in
the ring buffer and serial console is garbled due to the audit process
using many separate printk invocations for each message. Change the
AVC audit process to use a temporary buffer and output the contents
once the entire audit message is complete.

Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoxsm/flask: clean interdomain event channel hook
Daniel De Graaf [Wed, 29 Feb 2012 13:47:11 +0000 (13:47 +0000)]
xsm/flask: clean interdomain event channel hook

Don't attempt to relabel the already-bound half of the event channel
pair created by an interdomain event channel. This relabeling also
performed an incorrect check that the destination domain is permitted
to create the reverse event channel, which may not be true if the
unbound channel was created by the domain builder (like the xenstore
channel).

Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoxsm: label xen-consumer event channels
Daniel De Graaf [Wed, 29 Feb 2012 13:46:32 +0000 (13:46 +0000)]
xsm: label xen-consumer event channels

Event channels created during the domain build process for HVM domains
did not call the XSM creation hook. Since these channels are used
internally by Xen, redirect them to DOMAIN_INVAID instead of failing
to create if the XSM hook fails the permissions check.

Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoUpdate autoconf-generated configure script.
Keir Fraser [Wed, 29 Feb 2012 13:43:44 +0000 (13:43 +0000)]
Update autoconf-generated configure script.

Signed-off-by: Keir Fraser <keir@xen.org>
13 years agobuild: Export configure variables to hypervisor build
Daniel De Graaf [Wed, 29 Feb 2012 13:40:25 +0000 (13:40 +0000)]
build: Export configure variables to hypervisor build

Since the introduction of autoconf, builds with XSM enabled in .config
have been broken unless FLASK_ENABLE was explicitly set. Since the
setting in .config has apparently been deprecated in favor of an
autoconf --enable-xsm, add config/Xen.mk to export this to Xen. This
also makes --disable-debug and some paths to be pulled from the
configure process in the hypervisor build.

Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Committed-by: Keir Fraser <keir@xen.org>
13 years agohvmloader: drop the ovmf32 support and rename ovmf64 -> ovmf.
Attilio Rao [Wed, 29 Feb 2012 13:33:51 +0000 (13:33 +0000)]
hvmloader: drop the ovmf32 support and rename ovmf64 -> ovmf.

- Remove the 15cpus hack from ovmf because it should be unnecessary on
nowadays windows/EFI supported.

Signed-off-by: Attilio Rao <attilio.rao@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
13 years agoarm: Handle booting on SMP platforms
Tim Deegan [Tue, 28 Feb 2012 10:17:27 +0000 (10:17 +0000)]
arm: Handle booting on SMP platforms

Make all non-boot CPUs wait forever instead of trying to boot in parallel.

Signed-off-by: Tim Deegan <tim@xen.org>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Campbell <ian.campbell@citrix.com>
13 years agoarm: strip xen binary
Tim Deegan [Tue, 28 Feb 2012 10:17:27 +0000 (10:17 +0000)]
arm: strip xen binary

The symbols in it are wrong anyway and will only confuse people
who ought to be looking at xen-syms.

Signed-off-by: Tim Deegan <tim@xen.org>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Campbell <ian.campbell@citrix.com>
13 years agoX86: expose HLE/RTM features to dom0
Liu, Jinsong [Tue, 28 Feb 2012 08:06:27 +0000 (09:06 +0100)]
X86: expose HLE/RTM features to dom0

Intel recently release 2 new features, HLE and TRM.
Refer to http://software.intel.com/file/41417.
This patch expose them to dom0.

Signed-off-by: Liu, Jinsong <jinsong.liu@intel.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
13 years agoUpdate SEABIOS_UPSTREAM_TAG
Ian Campbell [Mon, 27 Feb 2012 17:05:18 +0000 (17:05 +0000)]
Update SEABIOS_UPSTREAM_TAG

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Campbell <Ian.Campbell@citrix.com>
13 years agoarm: fix unaligned memcpy() and memmove()
David Vrabel [Mon, 27 Feb 2012 17:05:18 +0000 (17:05 +0000)]
arm: fix unaligned memcpy() and memmove()

If memcpy() and memmove() were used with source and destination of
different alignment then the result would be all jumbled.

When their implementations were imported from Linux some macros for
big-endian platforms were taken instead of the correct little-endian
ones (specifically, the push and pull macros in assembler.h).

Fix this by taking Linux's arch/include/asm/assembler.h as-is and
making only the minimum changes necessary for Xen.

Signed-off-by: David Vrabel <david.vrabel@citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Campbell <Ian.Campbell@citrix.com>