Keir Fraser [Wed, 25 Jan 2012 15:52:47 +0000 (15:52 +0000)]
docs: Remove outdated LaTex documentation.
Signed-off-by: Keir Fraser <keir@xen.org>
Tim Deegan [Tue, 24 Jan 2012 16:46:17 +0000 (16:46 +0000)]
SVM: Plumb NPT error-code bits into nested-fault access_X arguments.
Signed-off-by: Tim Deegan <tim@xen.org>
Doug Magee [Tue, 24 Jan 2012 15:36:19 +0000 (15:36 +0000)]
libxl: rename is_assigned to is_pcidev_in_array
All this function does is check to see if a device is in an array of
pcidevs passed by the caller. The function name can be misleading if
ever used to check against a list of devices other than those assigned
to a domain.
Signed-off-by: Doug Magee <djmagee@mageenet.net>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Jean Guyader [Tue, 24 Jan 2012 15:33:36 +0000 (15:33 +0000)]
xl: Add missing trigger for the xl trigger cmd.
Add s3resume trigger in the usage of the xl trigger cmd.
Signed-off-by: Jean Guyader <jean.guyader@eu.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Ian Campbell [Tue, 24 Jan 2012 15:30:46 +0000 (15:30 +0000)]
libxl: remove _libxl_json_internal.h from libxl_json.h
libxl_json.h is intended as a user-includable header for applications which
would like to use libyajl directly with libxl types. It should not expose libxl
internals.
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>
<stefano.stabellini@eu.citrix.com> [Tue, 24 Jan 2012 15:09:32 +0000 (15:09 +0000)]
update MAINTAINERS file
From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Add Ian as Seabios maintainer and myself as upstream Qemu maintainer.
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>
<stefano.stabellini@eu.citrix.com> [Tue, 24 Jan 2012 15:09:31 +0000 (15:09 +0000)]
libxl: use new qemu at the location where xen-unstable installs it
From: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
<stefano.stabellini@eu.citrix.com> [Tue, 24 Jan 2012 15:09:31 +0000 (15:09 +0000)]
Clone and build Seabios by default
From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
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>
<stefano.stabellini@eu.citrix.com> [Tue, 24 Jan 2012 15:09:30 +0000 (15:09 +0000)]
Clone and build upstream Qemu by default
From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
<stefano.stabellini@eu.citrix.com> [Tue, 24 Jan 2012 15:09:30 +0000 (15:09 +0000)]
move the call to xen-setup after libxc and xenstore are built
From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Move the call to xen-setup, the wrapper script to configure
qemu-xen-traditional, right before building qemu-xen-traditional and
after libxc and xenstore are already built.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
<stefano.stabellini@eu.citrix.com> [Tue, 24 Jan 2012 15:09:29 +0000 (15:09 +0000)]
Rename ioemu-dir as qemu-xen-traditional-dir
From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
<stefano.stabellini@eu.citrix.com> [Tue, 24 Jan 2012 15:09:29 +0000 (15:09 +0000)]
Introduce git-checkout.sh
From: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Introduce a script to perform git checkout on an external git tree; use
git-checkout.sh in ioemu-dir-find.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Juergen Gross [Tue, 24 Jan 2012 14:21:12 +0000 (14:21 +0000)]
reflect cpupool in numa node affinity
In order to prefer node local memory for a domain the numa node
locality info must be built according to the cpus belonging to the
cpupool of the domain.
Signed-off-by: juergen.gross@ts.fujitsu.com
Committed-by: Keir Fraser <keir@xen.org>
Juergen Gross [Tue, 24 Jan 2012 14:20:40 +0000 (14:20 +0000)]
switch to dynamically allocated cpumask in domain_update_node_affinity()
cpumasks should rather be allocated dynamically.
Signed-off-by: juergen.gross@ts.fujitsu.com
Committed-by: Keir Fraser <keir@xen.org>
Juergen Gross [Tue, 24 Jan 2012 14:19:58 +0000 (14:19 +0000)]
introduce and use common macros for selecting cpupool based cpumasks
There are several instances of the same construct finding the cpumask
for a cpupool. Use macros instead.
Signed-off-by: juergen.gross@ts.fujitsu.com
Committed-by: Keir Fraser <keir@xen.org>
Wei Liu [Tue, 24 Jan 2012 14:16:04 +0000 (14:16 +0000)]
Add a GNTTABOP to swap the content of two grant references under lock
provided that they are not currently active.
Signed-off-by: Wei Liu <wei.liu2@citrix.com>
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
Keir Fraser [Mon, 23 Jan 2012 15:10:43 +0000 (15:10 +0000)]
Revert 24538:
5bb22a6871f6 "xenoprof: Make the escape code consistent across 32 and 64-bit xen"
Breaks 32-bit build.
Signed-off-by: Keir Fraser <keir@xen.org>
Paul Bolle [Mon, 23 Jan 2012 13:51:25 +0000 (14:51 +0100)]
decompressors: fix string typo 'bufer'
Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
Sascha Hauer [Mon, 23 Jan 2012 13:51:02 +0000 (14:51 +0100)]
unlzo: fix input buffer free
unlzo modifies the pointer to in_buf, so we have to free the original
buffer, not the modified pointer.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
Stefano Stabellini [Mon, 23 Jan 2012 09:42:12 +0000 (09:42 +0000)]
libelf-loader: introduce elf_load_image
Implement a new function, called elf_load_image, to perform the
actually copy of the elf image and clearing the padding. The function
is implemented as memcpy and memset when the library is built as part
of the tools, but it is implemented as raw_copy_to_guest and
raw_clear_guest when built as part of Xen, so that it can be safely
called with an HVM style dom0.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
Stefano Stabellini [Mon, 23 Jan 2012 09:41:27 +0000 (09:41 +0000)]
Introduce clear_user and clear_guest
Introduce clear_user for x86 and ia64, shamelessly taken from Linux.
The x86 version is the 32 bit clear_user implementation. Introduce
clear_guest for x86 and ia64. The x86 implementation is based on
clear_user and a new clear_user_hvm function. The ia64 implementation
is actually in xencomm and it is based on xencomm_copy_to_guest.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Acked-by: Jan Beulich <JBeulich@suse.com>
Committed-by: Keir Fraser <keir@xen.org>
Stefano Stabellini [Mon, 23 Jan 2012 09:40:35 +0000 (09:40 +0000)]
xen: implement an signed 64 bit division helper function
Implement a C function to perform 64 bit signed division and return
both quotient and remainder.
Useful as an helper function to implement __aeabi_ldivmod.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
Stefano Stabellini [Mon, 23 Jan 2012 09:39:58 +0000 (09:39 +0000)]
A collection of fixes to Xen common files
- call free_xenoprof_pages only ifdef CONFIG_XENOPROF;
- define PRI_stime as PRId64 in an header file;
- respect boundaries in is_kernel_*;
- implement is_kernel_rodata;
- guest_physmap_add_page should be ((void)0).
- fix guest_physmap_add_page;
- introduce CONFIG_XENOPROF;
- define _srodata and _erodata as const char*.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
Stefano Stabellini [Mon, 23 Jan 2012 09:39:11 +0000 (09:39 +0000)]
Include some header files that are not automatically included on all archs
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
Stefano Stabellini [Mon, 23 Jan 2012 09:38:34 +0000 (09:38 +0000)]
Move cpufreq option parsing to cpufreq.c
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
Committed-by: Keir Fraser <keir@xen.org>
George Dunlap [Mon, 23 Jan 2012 09:36:54 +0000 (09:36 +0000)]
xenoprof: Make the escape code consistent across 32 and 64-bit xen
At the moment, the xenoprof escape code is defined as "~0UL".
Unfortunately, this expands to 0xffffffff on 32-bit systems
and 0xffffffffffffffff on 64-bit systems; with the result that
while 32-on-32 and 64-in-64 work fine, 32-on-64 (also known as
"compat mode") is broken.
This patch makes the definition consistent across architectures.
In so doing, it will break old-32-bit-on-new-Xen, and vice versa;
but this was seen as an acceptable thing to do.
Signed-off-by: Marcus Granado <marcus.granado@eu.citrix.com>
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
George Dunlap [Mon, 23 Jan 2012 09:36:29 +0000 (09:36 +0000)]
xenoprof: Handle 32-bit guest stacks properly in a 64-bit hypervisor
The dump_guest_backtrace() function attempted to walk the stack
based on the assumption that the guest and hypervisor pointer sizes
were the same; thus any 32-bit guest running under 64-bit hypervisor
would have unreliable results.
In 64-bit mode, read the 32-bit stack frame properly.
Signed-off-by: Marcus Granado <marcus.granado@eu.citrix.com>
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
George Dunlap [Mon, 23 Jan 2012 09:36:01 +0000 (09:36 +0000)]
xenoprof: Adjust indentation
Bring indentation into Xen hypervisor standard coding style.
No functional changes.
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
Jan Beulich [Mon, 23 Jan 2012 09:35:17 +0000 (09:35 +0000)]
x86/vMSI: miscellaneous fixes
This addresses a number of problems in msixtbl_{read,write}():
- address alignment was not checked, allowing for memory corruption in
the hypervisor (write case) or returning of hypervisor private data
to the guest (read case)
- the interrupt mask bit was permitted to be written by the guest
(while Xen's interrupt flow control routines need to control it)
- MAX_MSIX_TABLE_{ENTRIES,PAGES} were pointlessly defined to plain
numbers (making it unobvious why they have these values, and making
the latter non-portable)
- MAX_MSIX_TABLE_PAGES was also off by one (failing to account for a
non-zero table offset); this was also affecting host MSI-X code
- struct msixtbl_entry's table_flags[] was one element larger than
necessary due to improper open-coding of BITS_TO_LONGS()
- msixtbl_read() unconditionally accessed the physical table, even
though the data was only needed in a quarter of all cases
- various calculations were done unnecessarily for both of the rather
distinct code paths in msixtbl_read()
Additionally it is unclear on what basis MAX_MSIX_ACC_ENTRIES was
chosen to be 3.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Committed-by: Keir Fraser <keir@xen.org>
Keir Fraser [Sun, 22 Jan 2012 10:20:03 +0000 (10:20 +0000)]
x86/hvm: No need to arch_set_info_guest() before restoring per-vcpu HVM state.
Signed-off-by: Keir Fraser <keir@xen.org>
Keir Fraser [Sat, 21 Jan 2012 17:15:40 +0000 (17:15 +0000)]
tools/libvchan: Beef up the CPU barriers in libvchan.
Although they were sufficient for x86, they weren't safe more generally.
Signed-off-by: Keir Fraser <keir@xen.org>
Keir Fraser [Sat, 21 Jan 2012 17:14:37 +0000 (17:14 +0000)]
libxc: Update rmb/wmb for x86.
Only the compiler needs to see the barriers; not the CPU.
Signed-off-by: Keir Fraser <keir@xen.org>
Keir Fraser [Sat, 21 Jan 2012 16:47:00 +0000 (16:47 +0000)]
libxl: libxl_qmp.c should use libxl's own list macros, since they
exist. Also, older Linux versions do not have SIMPLEQ macros in
sys/queue.h.
Signed-off-by: Keir Fraser <keir@xen.org>
Keir Fraser [Fri, 20 Jan 2012 18:17:59 +0000 (18:17 +0000)]
x86/hvm: Fix earlier hvm_load_cpu_ctxt() breakage.
Signed-off-by: Keir Fraser <keir@xen.org>
Dietmar Hahn [Fri, 20 Jan 2012 10:40:16 +0000 (10:40 +0000)]
vpmu: separate architecture specific PMU initialisation
This patch moves the architecture specific initialisation of the PMU
into the archicture specific directory.
Signed-off-by: Dietmar Hahn <dietmar.hahn@ts.fujitsu.com>
Signed-off-by: Keir Fraser <keir@xen.org>
Committed-by: Keir Fraser <keir@xen.org>
Keir Fraser [Fri, 20 Jan 2012 10:26:57 +0000 (10:26 +0000)]
x86/hvm: Remove unnecessary packed attribute from hvm_hw_cpu_xsave struct.
Signed-off-by: Keir Fraser <keir@xen.org>
Dario Faggioli [Fri, 20 Jan 2012 10:20:32 +0000 (10:20 +0000)]
iommu: Move IOMMU faults handling into softirq for AMD-Vi.
Dealing with interrupts from AMD-Vi IOMMU(s) is deferred to a
softirq-tasklet, raised by the actual IRQ handler. To avoid more
interrupts being generated (because of further faults), they must be
masked in the IOMMU within the low level IRQ handler and enabled back
in the tasklet body. Notice that this may cause the log to overflow,
but none of the existing entry will be overwritten.
Signed-off-by: Dario Faggioli <dario.faggioli@citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
Juergen Gross [Fri, 20 Jan 2012 10:17:12 +0000 (10:17 +0000)]
x86/hvm: Allow wake up of offline vcpu via nmi-ipi
On a real machine a cpu disabled via hlt with interrupts disabled can
be reactivated via a nmi ipi. Enable the hypervisor to do this for
hvm, too.
Signed-off-by: Juergen Gross <juergen.gross@ts.fujitsu.com>
Signed-off-by: Keir Fraser <keir@xen.org>
Committed-by: Keir Fraser <keir@xen.org>
Keir Fraser [Fri, 20 Jan 2012 10:13:55 +0000 (10:13 +0000)]
xen: Simplify callers of boot_vcpu(). In VCPUOP_up, check
is_initialised under the per-domain lock.
Signed-off-by: Keir Fraser <keir@xen.org>
Tim Deegan [Thu, 19 Jan 2012 13:09:23 +0000 (13:09 +0000)]
x86/mm: refine epte_present test
The current test for a present ept entry checks for a permission bit
to be set.
While this is valid in contexts in which we want to know whether an entry
will fault, it is not correct when it comes to testing whether an entry is
valid. Specifically, in the ept_change_entry_type_page function which is
used to set entries to the log dirty type.
In combination with a p2m access type like n or n2rwx, log dirty will not be
set for ept entries for which it should.
Reported-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Signed-off-by: Tim Deegan <tim@xen.org>
Acked-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Committed-by: Tim Deegan <tim@xen.org>
Andres Lagar-Cavilla [Thu, 19 Jan 2012 10:42:42 +0000 (10:42 +0000)]
Correct p2m unlocking during grant table map
We were not putting gfn's consistently.
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Acked-by: Tim Deegan <tim@xen.org>
Committed-by: Tim Deegan <tim@xen.org>
Andres Lagar-Cavilla [Thu, 19 Jan 2012 10:42:42 +0000 (10:42 +0000)]
x86/mm: Don't ASSERT() for a valid mfn on paged p2m entries in guest_physmap_ad
Signed-off-by: Adin Scannell <adin@scannell.ca>
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Acked-by: Tim Deegan <tim@xen.org>
Committed-by: Tim Deegan <tim@xen.org>
Andres Lagar-Cavilla [Thu, 19 Jan 2012 10:38:47 +0000 (10:38 +0000)]
x86/mm: Improve ring management for memory events. Do not lose guest events
This patch is an amalgamation of the work done by Olaf Hering <olaf@aepfle.de>
and our work.
It combines logic changes to simplify the memory event API, as well as
leveraging wait queues to deal with extreme conditions in which too many
events are generated by a guest vcpu.
In order to generate a new event, a slot in the ring is claimed. If a
guest vcpu is generating the event and there is no space, it is put on a
wait queue. If a foreign vcpu is generating the event and there is no
space, the vcpu is expected to retry its operation. If an error happens
later, the function returns the claimed slot via a cancel operation.
Thus, the API has only four calls: claim slot, cancel claimed slot, put
request in the ring, consume the response.
With all these mechanisms, no guest events are lost.
Our testing includes 1. ballooning down 512 MiBs; 2. using mem access n2rwx, in
which every page access in a four-vCPU guest results in an event, with no vCPU
pausing, and the four vCPUs touching all RAM. No guest events were lost in
either case, and qemu-dm had no mapping problems.
Signed-off-by: Adin Scannell <adin@scannell.ca>
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Signed-off-by: Tim Deegan <tim@xen.org>
Committed-by: Tim Deegan <tim@xen.org>
Jan Beulich [Thu, 19 Jan 2012 09:08:12 +0000 (10:08 +0100)]
add NULL checks in code added by 24492:
6c104b46ef89
Also a couple of missing is_hvm_domain() checks.
Further properly pass the PCI segment in a call to pci_get_pdev().
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Paul Durrant [Tue, 17 Jan 2012 12:40:52 +0000 (12:40 +0000)]
libxl: VM generation ID: Add missing gate for HVM domain.
This will fix localhost migrate failures found by the automatic tests.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Hui Lv [Tue, 17 Jan 2012 11:18:48 +0000 (11:18 +0000)]
sched_credit: Use delay to control scheduling frequency
This patch can improve Xen performance:
1. Basically, the "delay method" can achieve 11% overall performance
boost for SPECvirt than original credit scheduler.
2. We have tried 1ms delay and 10ms delay, there is no big difference
between these two configurations. (1ms is enough to achieve a good
performance)
3. We have compared different load level response time/latency (low,
high, peak), "delay method" didn't bring very much response time
increase.
4. 1ms delay can reduce 30% context switch at peak performance, where
produces the benefits. (int sched_ratelimit_us = 1000 is the
recommended setting)
Signed-off-by: Hui Lv <hui.lv@intel.com>
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
Dario Faggioli [Tue, 17 Jan 2012 11:11:26 +0000 (11:11 +0000)]
Move IOMMU faults handling into softirq for VT-d.
Dealing with interrupts from VT-d IOMMU(s) is deferred to a
softirq-tasklet, raised by the actual IRQ handler. Since a new
interrupt is not generated, even if further faults occur, until we
cleared all the pending ones, there's no need of disabling IRQs, as
the hardware does it by its own. Notice that this may cause the log
to overflow, but none of the existing entry will be overwritten.
Signed-off-by: Dario Faggioli <dario.faggioli@citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
Ian Campbell [Mon, 16 Jan 2012 17:56:07 +0000 (17:56 +0000)]
libxl: drop vfs path -- fsback/front were deleted some time ago
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>
Ian Campbell [Tue, 10 Jan 2012 16:19:09 +0000 (16:19 +0000)]
ocaml: Correct ocaml type name for Aggregate types.
No change to the generated code because this path isn't used yet.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson.citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Wei Wang [Mon, 16 Jan 2012 15:36:15 +0000 (16:36 +0100)]
cleanup get_gfn_from_base_reg() function.
Signed-off-by: Wei Wang <wei.wang2@amd.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
Jan Beulich [Mon, 16 Jan 2012 08:55:05 +0000 (09:55 +0100)]
fix compat header generation after 24503:
86b8a1e3a419
At once also remove the duplicate forced inclusion of
public/xen-compat.h there (it's already done through cppflags-y) and
convert --include to the canonical -include in said c/s' adjustments
to CFLAGS-y and AFLAGS-y.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Dario Faggioli [Sun, 15 Jan 2012 22:05:12 +0000 (22:05 +0000)]
sedf: remove useless tracing printk and harmonize comments style.
sched_sedf.c used o have its own mechanism for producing tracing-alike
kind of information (domain block, wakeup, etc.). Nowadays, with an
even not so high number of pCPUs/vCPUs, just trying to enable this
makes the serial console completely unusable, produces tons of very
hard to parse and interpreet logging and can easily livelock
Dom0. Moreover, pretty much the same result this is struggling to get
to, is better achieved by enabling the scheduler-related tracing
events, as it is for the other schedulers (say, credit or credit2).
For all these reasons, this removes that machinery completely. While
at it, check in some cosmetics that harmonize the comments withim
themself and with the rest of the code base.
Signed-off-by: Dario Faggioli <dario.faggioli@citrix.com>
Acked-by: George Dunlap <george.dunlap@eu.citrix.com>
Keir Fraser [Sun, 15 Jan 2012 22:02:35 +0000 (22:02 +0000)]
x86: Make asmlinkage explicitly a no-op, and avoid usage in arch/x86
Signed-off-by: Keir Fraser <keir@xen.org>
Ian Jackson [Fri, 13 Jan 2012 16:54:27 +0000 (16:54 +0000)]
libxl: Fix leaks on context init failure
Several of the error exits from libxl_ctx_alloc leaked the context
struct itself and sometimes other resources too.
Fix this by using the standard "rc = ERROR_FOO; goto out" error
handling style throughout.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Ian Jackson [Fri, 13 Jan 2012 16:54:27 +0000 (16:54 +0000)]
libxl: Provide more formal libxl__ctx_lock and _unlock
Previously the only official interface for the ctx lock was the
CTX_LOCK and CTX_UNLOCK convenience macros, which assume and use "ctx"
from the surrounding scope.
Instead, provide libxl__ctx_lock and _unlock functions which can be
used by these convenience macros, and other callers who have
nonstandard requirements.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Ian Jackson [Fri, 13 Jan 2012 16:54:19 +0000 (16:54 +0000)]
libxl: move a lot more includes into libxl_internal.h
Move a lot of
#include <stdfoo.h>
from individual files into libxl_internal.h. This helps avoid
portability mistakes where necessary system headers are omitted from
individual files, and is also of course a convenience when developing.
Also add
#include "libxl_osdeps.h" /* must come before any other headers */
to the top of most libxl*.c files, so that anyone who adds any headers
before libxl_internal.h will put the in the right place.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Ian Jackson [Fri, 13 Jan 2012 16:54:11 +0000 (16:54 +0000)]
xenstore: New function xs_path_is_subpath
This utility function compares two paths, textually and reports
whether one is a subpath (a child path) of the other.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Ian Jackson [Fri, 13 Jan 2012 16:54:11 +0000 (16:54 +0000)]
libxl: make LIBXL_INIT_GC a statement, not an initialiser
Previously LIBXL_INIT_GC was an initialiser, which you were expected
to use like this:
libxl__gc gc = LIBXL_INIT_GC(ctx);
But we are going to want to put things in the gc which are to be
initialised using other macros. That means that LIBXL_INIT_GC has to
become a statement too. So instead, we make it so that it's used like this:
libxl_gc gc;
LIBXL_INIT_GC(gc,ctx);
In fact there are only a couple of callers now,
including GC_INIT which uses this trick:
libxl_gc gc[1];
LIBXL_INIT_GC(gc[0],ctx);
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Ian Jackson [Fri, 13 Jan 2012 16:54:09 +0000 (16:54 +0000)]
.gitignore: ocaml: add xenlight.mli
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <Ian.Jackson@eu.citrix.com>
Jan Beulich [Fri, 13 Jan 2012 07:34:57 +0000 (08:34 +0100)]
remove inclusion of asm/config.h
This was always bogus (xen/config.h should have been used instead) and
is superfluous now that xen/config.h gets included through the compiler
command line.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Jan Beulich [Fri, 13 Jan 2012 07:33:31 +0000 (08:33 +0100)]
force inclusion of xen/config.h through compiler option
As we expect all source files to include the header as the first thing
anyway, stop doing this by repeating the inclusion in each and every
source file (and in many headers), but rather enforce this uniformly
through the compiler command line.
As a first cleanup step, remove the explicit inclusion from all common
headers. Further cleanup can be done incrementally.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Jan Beulich [Thu, 12 Jan 2012 17:51:11 +0000 (17:51 +0000)]
libxl: fix build with make prior to 3.81
Up to 3.80, make only supported simple 'else' constructs, which got
violated by 24432:
e0effa7c04f5.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Ian Jackson [Thu, 12 Jan 2012 16:45:21 +0000 (16:45 +0000)]
.gitignore
Introduce a .gitignore file for the convenience of people who use git.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Acked-by: Keir Fraser <keir@xen.org>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Tim Deegan [Thu, 12 Jan 2012 16:39:05 +0000 (16:39 +0000)]
x86/mm: Fix operator associativity bug in mm-locks.h
In an order-enforcing wrapper for an "external" recursive lock,
we aim to increment/decrement a recurse count and only update the
lock ordering on zero counts.
Unfortunately we incrementing/decrementing the pointer to the
recurse count, rather than the count itself.
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Acked-by: Tim Deegan <tim@xen.org>
Committed-by: Tim Deegan <tim@xen.org>
Jan Beulich [Thu, 12 Jan 2012 15:46:54 +0000 (16:46 +0100)]
x86-64: globally use -mno-sse
This eliminates pointless prologue code from functions having variable
argument lists (since that way xmm registers can't possibly be passed).
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Jan Beulich [Thu, 12 Jan 2012 15:45:39 +0000 (16:45 +0100)]
x86: properly define size_t
Having it defined unilaterally as 'unsigned long' got me surprised
recently when I tried to use the 'z' printk type modifier, as that is
expected by the compiler to be used only on the type it knows size_t
is supposed to have.
Generally the compiler provides a construct to do this, so use it when
available.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Acked-by: Christoph Egger <Christoph.Egger@amd.com>
Jan Beulich [Thu, 12 Jan 2012 15:43:55 +0000 (16:43 +0100)]
x86: move and fold certain type property definitions
Not only is it less code to have them consolidated, it also permits
their use virtually everywhere (since config.h is required to be
included everywhere. (Shouldn't we, btw, follow Linux and remove the
explicit inclusion in favor of command line enforced one?)
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Wei Wang [Thu, 12 Jan 2012 12:54:28 +0000 (13:54 +0100)]
amd iommu: Enable FC bit in iommu host level PTE
Signed-off-by: Wei Wang <wei.wang2@amd.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
Wei Wang [Thu, 12 Jan 2012 12:53:57 +0000 (13:53 +0100)]
amd iommu: add ppr log processing into iommu interrupt handling
PPR log and event log share the same interrupt source. Interrupt
handler should check both of them.
Signed-off-by: Wei Wang <wei.wang2@amd.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
Wei Wang [Thu, 12 Jan 2012 12:53:20 +0000 (13:53 +0100)]
amd iommu: Enable guest level translation
Similar to nested paging for SVM, IOMMUv2 supports two level
translations for DMA. This patch enables this feature.
Signed-off-by: Wei Wang <wei.wang2@amd.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
Wei Wang [Thu, 12 Jan 2012 12:52:37 +0000 (13:52 +0100)]
amd iommu: Enable ppr log
IOMMUv2 writes peripheral page service request (PPR) records into ppr
log to report guest OS pending DMA page requests from ATS devices.
Signed-off-by: Wei Wang <wei.wang2@amd.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
Wei Wang [Thu, 12 Jan 2012 12:50:50 +0000 (13:50 +0100)]
amd iommu: Add iommu emulation for hvm guest
ATS device driver that support PASID [1] and PRI [2] capabilites needs
to work with iommu driver in guest OS. We have to expose iommu
functionality to HVM guest, if we want assign ATS device to it. A new
hypervisor mmio handler is added to intercept iommu mmio accesses from
guest.
Signed-off-by: Wei Wang <wei.wang2@amd.com>
[1] http://www.pcisig.com/specifications/pciexpress/specifications/ECN-PASID-ATS-2011-03-31.pdf
[2] http://www.pcisig.com/members/downloads/specifications/iov/ats_r1.1_26Jan09.pdf
Committed-by: Jan Beulich <jbeulich@suse.com>
Wei Wang [Thu, 12 Jan 2012 12:49:34 +0000 (13:49 +0100)]
amd iommu: Introduces new helper functions to simplify bitwise operations
Signed-off-by: Wei Wang <wei.wang2@amd.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
Wei Wang [Thu, 12 Jan 2012 12:48:57 +0000 (13:48 +0100)]
amd iommu: Refactoring iommu ring buffer definition
Introduce struct ring_buffer to represent iommu cmd buffer, event log and ppr log
Signed-off-by: Wei Wang <wei.wang2@amd.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
Jan Beulich [Thu, 12 Jan 2012 12:45:47 +0000 (13:45 +0100)]
move declarations of some required per-arch functions into common headers
... since it is pointless to have each arch declare them on their own
(and now and the - see ia64 - forget to do so).
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Jan Beulich [Thu, 12 Jan 2012 12:44:51 +0000 (13:44 +0100)]
ia64: fix build (once again)
24423:
069c08b7de46 failed to add a necessary include, and for a long
time kexec.h suffered from a missing structure forward declaration.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Andres Lagar-Cavilla [Thu, 12 Jan 2012 11:02:18 +0000 (11:02 +0000)]
x86/mm: Code style fixes in mem_sharing.c
No functional changes, only code style issues.
One small diff in mem_sharing_gref_to_gfn() looks like a logic change,
but it's not. The flow was confusing, so it's been clarified.
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Signed-off-by: Adin Scannell <adin@scannell.ca>
Acked-by: Tim Deegan <tim@xen.org>
Committed-by: Tim Deegan <tim@xen.org>
Andres Lagar-Cavilla [Thu, 12 Jan 2012 10:52:30 +0000 (10:52 +0000)]
x86/mm: Disable paging_prep
The only way to page-in a page is now the safe paging_load domctl.
(Unless the page was never paged out in the first place)
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Acked-by: Tim Deegan <tim@xen.org>
Committed-by: Tim Deegan <tim@xen.org>
Andres Lagar-Cavilla [Thu, 12 Jan 2012 10:52:30 +0000 (10:52 +0000)]
x86/mm: Allow a page in p2m_ram_paged_out state to be loaded
This removes the need for a page to be accessed in order to be pageable
again. A pager can now page-in pages at will with no need to map them
in a separate thread.
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Acked-by: Tim Deegan <tim@xen.org>
Committed-by: Tim Deegan <tim@xen.org>
Wei, Gang [Wed, 11 Jan 2012 09:34:45 +0000 (10:34 +0100)]
x86: add a new SMP bring up way for tboot case
From: Wei, Gang <gang.wei@intel.com>
tboot may be trying to put APs waiting in MWAIT loops before launching
Xen. Xen could check the new flag field in v6 tboot shared page for the
hint. If TB_FLAG_AP_WAKE_SUPPORT bit in flag field is set, Xen BSP have
to write the monitored memory(g_tboot_shared->ap_wake_trigger) to bring
APs out of MWAIT loops. The sipi vector should be written in
g_tboot_shared->ap_wake_addr before waking up APs.
Signed-off-by: Joseph Cihula <joseph.cihula@intel.com>
Signed-off-by: Shane Wang <shane.wang@intel.com>
Signed-off-by: Gang Wei <gang.wei@intel.com>
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Committed-by: Jan Beulich <jbeulich@suse.com>
Olaf Hering [Mon, 9 Jan 2012 16:07:32 +0000 (17:07 +0100)]
xenpaging: convert mem_event_t to struct mem_event
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Olaf Hering [Mon, 9 Jan 2012 16:07:26 +0000 (17:07 +0100)]
xenpaging: convert xenpaging_t to struct xenpaging
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Olaf Hering [Mon, 9 Jan 2012 16:07:21 +0000 (17:07 +0100)]
xenpaging: convert xenpaging_victim_t to struct victim
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Jan Beulich [Tue, 10 Jan 2012 16:24:50 +0000 (16:24 +0000)]
xenpm: assorted adjustments
- use consistent error values (stop mixing of [positive] errno values
with literal -E... ones)
- properly format output
- don't use leading zeros in decimal output
- move printing of average frequency into P-state conditional (rather
than a C-state one)
- don't print some C-state related info when CPU idle management is
disabled in the hypervisor
- use calloc() for array allocations that also got cleared via memset()
so far
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Stefano Stabellini [Tue, 10 Jan 2012 16:13:06 +0000 (16:13 +0000)]
docs: xl.pod.1: introduction to FLASK
Add a simple introduction to FLASK to the xl man page, at the beginning
of the FLASK chapter. Link to the xsm-flask.txt document.
Currently FLASK, TMEM and PCI PASS-THROUGH are defined as =head2 so they
look like sub-chapters of VIRTUAL DEVICE COMMANDS. Make them =head1.
Based on a text written by Daniel De Graaf.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Olaf Hering [Thu, 5 Jan 2012 18:40:40 +0000 (19:40 +0100)]
libxl: add feature flag to xenstore for XS_RESET_WATCHES
Tell guest about availibilty of xenstoreds XS_RESET_WATCHES function.
Guests can not issue this command unconditionally because some buggy
toolstacks (such as EC2) do not ignore unknown commands properly.
Signed-off-by: Olaf Hering <olaf@aepfle.de>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Daniel De Graaf [Tue, 10 Jan 2012 16:04:26 +0000 (16:04 +0000)]
flask/policy: add missing manage_domain rules
The updated example policy did not include rules to allow managing the
created domains (pause, unpause, destroy); allow these actions.
Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Daniel De Graaf [Tue, 10 Jan 2012 16:04:25 +0000 (16:04 +0000)]
docs: Update xsm-flask documentation
Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Roger Pau Monne [Tue, 20 Dec 2011 07:31:40 +0000 (08:31 +0100)]
blktap2/vhd: add -liconv when linking if using libiconv
If libiconv is detected on the system add -liconv when linking the
libvhd library.
If -liconv is not added when compiling libvhd with libiconv the
following error occours when linking vhd-util and vhd-update:
gcc -o vhd-util vhd-util.o -Llib -lvhd
lib/libvhd.so: undefined reference to `libiconv_open'
lib/libvhd.so: undefined reference to `libiconv_close'
lib/libvhd.so: undefined reference to `libiconv'
Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Roger Pau Monne [Tue, 20 Dec 2011 07:31:40 +0000 (08:31 +0100)]
build: detect if libiconv is present
Detect if libiconv is present in the system, since we will have to
link against it when using iconv.
Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Roger Pau Monne [Tue, 20 Dec 2011 07:31:40 +0000 (08:31 +0100)]
blktap2: remove local definitions and include byteswap.h
Use the same approach as tools/blktap2/include/libvhd.h, remove local
definitions of bswap* and include byteswap.h. Also remove the
HAVE_BYTESWAP_H ifdef, since it was not defined in this context (it's
defined by QEMU).
Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Roger Pau Monne [Tue, 20 Dec 2011 07:31:40 +0000 (08:31 +0100)]
blktap: remove local definitions and include byteswap.h
Use the same approach as tools/blktap2/include/libvhd.h, remove local
definitions of bswap* and include byteswap.h. Also remove the
HAVE_BYTESWAP_H ifdef, since it was not defined in this context (it's
defined by QEMU).
Signed-off-by: Roger Pau Monne <roger.pau@entel.upc.edu>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Paul Durrant [Fri, 16 Dec 2011 14:54:14 +0000 (14:54 +0000)]
tools: VM generation ID save/restore and migrate.
Add code to track the address of the VM generation ID buffer across a
save/restore or migrate, and increment it as necessary.
The address of the buffer is written into xenstore by hvmloader at
boot time. It must be read from xenstore by the caller of
xc_domain_save() and then written back again by the caller of
xc_domain_restore().
Note that the changes to xc_save.c and xc_restore.c are merely
sufficient for them to build.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Paul Durrant [Fri, 16 Dec 2011 14:54:13 +0000 (14:54 +0000)]
libxl: Add hvm specific ro and rw nodes.
The hvmloader node was created by libxl__create_device_model() but it
needs to be moved earlier so that it can parent the new rw
generation-id-address node.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Paul Durrant [Fri, 16 Dec 2011 14:54:13 +0000 (14:54 +0000)]
libxl: Open code rw and ro node creation.
Use a new libxl__xs_mkdir() to do this and also clean up extraneous
node creation while in the neighbourhood. Checking 'xenstore-ls -fp'
output before and after shows that, as well as the disappearance of
error, drivers, messages and domid, the following perms change is also
present:
-device/suspend = "" (ndomU)
+device/suspend = "" (n0,rdomU)
I believe the new perms are more desirable than the old ones.
Signed-off-by: Paul Durrant <paul.durrant@citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Andres Lagar-Cavilla [Tue, 10 Jan 2012 15:38:08 +0000 (15:38 +0000)]
Add correct const-ness to memshr tool functions
This patch addresses some of the compile and link issues with the memshr
module.
Signed-off-by: Adin Scannell <adin@scannell.ca>
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Acked-by: Ian Jackson <ian.jackson.citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Andres Lagar-Cavilla [Tue, 10 Jan 2012 15:38:08 +0000 (15:38 +0000)]
Fix types used in xc_memshr_* functions
Currently the memshr functions use uint32_t for the domid. This actually leads
to a funny domid_t -> uint32_t -> domid_t sequence of casts. This patch
updates the API functions to be domid_t in the first place.
No tools need to be modified with this patch, the casts were implicit.
Signed-off-by: Adin Scannell <adin@scannell.ca>
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Acked-by: Ian Jackson <ian.jackson.citrix.com>
Committed-by: Ian Jackson <ian.jackson.citrix.com>
Andres Lagar-Cavilla [Tue, 10 Jan 2012 15:35:01 +0000 (15:35 +0000)]
libxc: Only retry mapping pages when ENOENT is returned
If the return value from the ioctl() is not ENOENT, it's possible that err[i]
will not be updated and libxc will just loop forever. Although it's unlikely
that err[i] would not be updated after the ioctl() gets through at least once,
it's better to be defensive.
Signed-off-by: Adin Scannell <adin@scannell.ca>
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Committed-by: Ian Jackson <ian.jackson@eu.citrix.com>
Jan Beulich [Mon, 9 Jan 2012 15:01:44 +0000 (16:01 +0100)]
VMX: print Pause Loop Exiting disabled message just once
... rather than per booting CPU.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>
Jan Beulich [Mon, 9 Jan 2012 14:59:59 +0000 (15:59 +0100)]
PCI: properly abstract out per-architecture extensions to struct pci_dev
x86's used_vectors member was both misplaced (in struct pci_dev_info,
which acts as a hypercall input data passing container only) and
improperly abstracted (requiring a CONFIG_X86 conditional in a generic
header).
The adjustment requires hiding several more lines in IA64's pci.h, but
as a benefit this allows removing one of the "null" headers.
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Acked-by: Keir Fraser <keir@xen.org>