Keir Fraser [Fri, 4 Jul 2008 12:02:31 +0000 (13:02 +0100)]
vgabios: upgrade to CVS version
cvs -z3 -d:pserver:anonymous@cvs.savannah.nongnu.org:/sources/vgabios
co vgabios
Patchs backported:
- vgabios: Support VESA power management extensions. (cs 17692)
- x86, hvm: Allow Cirrus VGA BIOS to clear framebuffer with minimal
PIO writes. (cs 16242)
This patch fixes the bug with the IDR boot CD.
Signed-off-by: Jean Guyader <jean.guyader@eu.citrix.com>
Keir Fraser [Fri, 4 Jul 2008 11:39:18 +0000 (12:39 +0100)]
Cleanups to suspend-event-channel patches.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 4 Jul 2008 11:20:19 +0000 (12:20 +0100)]
Fix build.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 4 Jul 2008 11:17:33 +0000 (12:17 +0100)]
Revert incorrectly checked-in changes.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 4 Jul 2008 11:00:38 +0000 (12:00 +0100)]
Teach xc_save to use event-channel-based domain suspend if available.
If the guest provides a suspend event channel through xenstore,
xc_save will use it in preference to the old xenstore-based method.
Xend is still informed when the domain has suspended so that it can
perform device migration in parallel with last-round migration.
Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
Keir Fraser [Fri, 4 Jul 2008 11:00:24 +0000 (12:00 +0100)]
Add facility to get notification of domain suspend by event channel.
This event channel will be notified when the domain transitions to the
suspended state, which can be much faster than raising VIRQ_DOM_EXC
and waiting for the notification to be propagated via xenstore.
No attempt is made here to prevent multiple subscribers (last one
wins), or to detect that the subscriber has gone away. Userspace tools
should take care.
Signed-off-by: Brendan Cully <brendan@cs.ubc.ca>
Keir Fraser [Fri, 4 Jul 2008 10:54:21 +0000 (11:54 +0100)]
ioemu: Support more Capability Structures (including MSI/MSI-X)
and Device Specific Registers for pt device.
I implemented following Capability Structures and Device Specific
Registers.
* Configuration Header Type 0
-> emulation.
"emulation" does not mean no accessing real I/O device.
Access real I/O device, but guest value and real value
might be different.
* MSI Capability Structure
-> emulation.
Behavior is not changed from existed implementation in
pt-msi.c, although code is changed.
* MSI-X Capability Structure
-> emulation.
Behavior is not changed from existed implementation in
pt-msi.c, although code is changed.
* PCI Express Capability Structure
-> emulation.
* PCI Power Management Capability Structure
-> emulation.
* Vital Product Data Capability Structure
-> emulation.
Emulated register is only Next Capability Pointer
Register.
All other registers are passthrough.
* Vendor Specific Capability Structure
-> emulation
Emulated register is only Next Capability Pointer
Register.
All other registers are passthrough.
* Device Specific Register (exclude capability structures)
-> passthrough.
The device drivers in guest domain are allowed to access
Device Specific Register. So various I/O device will work.
I assigned following device to guest domain, and they worked fine.
- PCIe NIC (MSI)
- PCI NIC (MSI)
- UHCI (INTx interrupt)
- IDE Controller (INTx interrupt)
Signed-off-by: Yuji Shimada <shimada-yxb@necst.nec.co.jp>
Keir Fraser [Fri, 4 Jul 2008 10:51:59 +0000 (11:51 +0100)]
x86: MSI interrupt storm avoidance.
Signed-off-by: Shan Haitao <Haitao.shan@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Thu, 3 Jul 2008 12:39:06 +0000 (13:39 +0100)]
pvSCSI: xend changes
Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com>
Signed-off-by: Jun Kamada <kama@jp.fujitsu.com>
Keir Fraser [Thu, 3 Jul 2008 10:32:10 +0000 (11:32 +0100)]
xm-test: Remove a policy reset from acm test case
Remove the resetting of the policy from this point in the test case
since the new default policy has the '__UNLABELED__' label, which is
not expected in subsequent checks.
Signed-off-by; Stefan Berger <stefanb@us.ibm.com>
Keir Fraser [Thu, 3 Jul 2008 10:31:40 +0000 (11:31 +0100)]
vtpm: Add two missing quotes in the vTPM hotplug script.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
Keir Fraser [Thu, 3 Jul 2008 09:59:43 +0000 (10:59 +0100)]
ioemu: Explicitly define certain PCI/MSI macros.
From: Haitao Shan <haitao.shan@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Thu, 3 Jul 2008 09:57:51 +0000 (10:57 +0100)]
Update tboot tarfile to latest version in Trusted Boot SourceForge site
Signed-off-by: Joseph Cihula <joseph.cihula@intel.com>
Keir Fraser [Thu, 3 Jul 2008 09:45:46 +0000 (10:45 +0100)]
[BUILD] Support cloning Linux tree from a git repository.
Integrate the linux-2.6-tip tree as linux-2.6-tip-latest
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Keir Fraser [Thu, 3 Jul 2008 09:44:13 +0000 (10:44 +0100)]
Support building of out-of-tree merged qemu from git
This provides support for building the new merged qemu from
qemu-xen.git, or from a local checkout.
The default is still to use the in-tree version, because the patchman
infrastructure for testing, and propagation from staging to
xen-unstable, needs a small amount of work to cope with git.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Keir Fraser [Thu, 3 Jul 2008 09:27:12 +0000 (10:27 +0100)]
XenAPI: Add Direct PCI Device (DPCI) Assignment Support
Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@ab.jp.nec.com>
Keir Fraser [Thu, 3 Jul 2008 09:26:16 +0000 (10:26 +0100)]
XenAPI: Add Physical PCI Device (PPCI) Support
Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@ab.jp.nec.com>
Keir Fraser [Wed, 2 Jul 2008 16:28:27 +0000 (17:28 +0100)]
iommu: Fix hvm_dpci_eoi for smp guest in ioapic interrupt mode
My testing shows, for some smp guests, ent->fields.mask will not be
unmasked when hvm_dpci_eoi() is invoked at the first time. In that
case, we should rely on timeout call back to do pirq_guest_eoi() and
should not stop the per-irq timer too early.
From: Wei Wang <wei.wang2@amd.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Wed, 2 Jul 2008 16:26:42 +0000 (17:26 +0100)]
minios: PIRQ and MSI/MSI-X support
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Wed, 2 Jul 2008 16:25:05 +0000 (17:25 +0100)]
x86 hvm: Fix RTC handling.
1. Clean up initialisation/destruction.
2. Better handle per-domain time-offset changes.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Wed, 2 Jul 2008 16:10:52 +0000 (17:10 +0100)]
Do not allow HVM save/restore of a dying domain.
It's not a sensible thing to do, and it is easier than auditing all
state save/restore functions for safety (most importantly, racing
against domain_relinquish_resources).
Also place a spin_barrier on domain_lock after asserting d->is_dying,
allowing critical regions under the domain_lock to safely check
is_dying and avoid races with domain_relinquish_resources().
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Wed, 2 Jul 2008 12:54:20 +0000 (13:54 +0100)]
stubdom: PCI passthrough support via PV-PCI
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Wed, 2 Jul 2008 12:37:16 +0000 (13:37 +0100)]
pciif: do not depend on linux' msix_entries
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Wed, 2 Jul 2008 09:56:37 +0000 (10:56 +0100)]
x86: Remove inline declaration to fix build.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Wed, 2 Jul 2008 08:45:18 +0000 (09:45 +0100)]
ioemu: Add check for mapping MSI pirqs.
From: Haitao Shan <haitao.shan@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Wed, 2 Jul 2008 08:44:09 +0000 (09:44 +0100)]
x86: Fix MSI cleanup.
Fixes bugzilla bug #1279.
From: Haitao Shan <haitao.shan@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Wed, 2 Jul 2008 08:42:37 +0000 (09:42 +0100)]
xend: Replace stray tab-indent with space-indent
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
Isaku Yamahata [Wed, 2 Jul 2008 02:30:37 +0000 (11:30 +0900)]
merge with xen-unstable.hg
Keir Fraser [Tue, 1 Jul 2008 13:50:35 +0000 (14:50 +0100)]
minios: proper frees are now handled, so drop the FIXME comment
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Tue, 1 Jul 2008 12:27:41 +0000 (13:27 +0100)]
x86_emulate: (Almost) complete FPU emulation.
Provide emulation for all FPU instructions except fsave/frstore &
fnstenv/fldenv.
While the main purpose of the patch is to avoid current and future
"gotchas" on FPU intructions used by various OS boot-loaders, it is
complete enough to run DOS realmode FPU applications and benchmarks,
but don't expect to set any speed records.
Signed-off-by: Trolle Selander <trolle.selander@eu.citrix.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Tue, 1 Jul 2008 10:41:43 +0000 (11:41 +0100)]
VT-d: Fix queue invalidation
Correct invalidate_sync(), and clean up qinval_setup().
Signed-off-by: Weidong Han <weidong.han@intel.com>
Keir Fraser [Tue, 1 Jul 2008 10:40:55 +0000 (11:40 +0100)]
VT-d: Do CLFLUSH after updating IRTE entries
Like root, context and DMA remap page table, interrupt remap table
also needs CLFLUSH after any update.
Signed-off-by: Weidong Han <weidong.han@intel.com>
Keir Fraser [Tue, 1 Jul 2008 10:40:07 +0000 (11:40 +0100)]
xenballoond (memory overcommit) scripts
See the README and conf files for more info.
Signed-off-by: Dan Magenheimer <dan.magenheimer@oracle.com>
Keir Fraser [Tue, 1 Jul 2008 10:38:51 +0000 (11:38 +0100)]
ioemu: limit xen-console buffering
Set dom->buffer.max_capacity to xend configured limit.
Signed-off-by: Pat Campbell <plc@novell.com>
Keir Fraser [Tue, 1 Jul 2008 09:59:09 +0000 (10:59 +0100)]
xend: open qemu-dm logfile in append mode if log rotation is disabled by config.
Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@ab.jp.nec.com>
Keir Fraser [Tue, 1 Jul 2008 09:58:43 +0000 (10:58 +0100)]
xend: improve the rotation of qemu-dm logfiles.
Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@ab.jp.nec.com>
Keir Fraser [Mon, 30 Jun 2008 13:19:09 +0000 (14:19 +0100)]
x86_emulate: read/write/insn_fetch emulation hooks now all take a
pointer to emulator data buffer, and an arbitrary byte count (up to
the size of a page of memory).
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Mon, 30 Jun 2008 10:39:10 +0000 (11:39 +0100)]
blktap: Fall back to libcrypto if libgcrypt is not installed.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Mon, 30 Jun 2008 09:02:21 +0000 (10:02 +0100)]
tools/python: fix TypeError for 17903:
0728459b3c8d
If `hda' is used in domU config file and domain-0 has /dev/hda,
creating a domain failed by TypeError:
File "//usr/lib/python/xen/xend/server/blkif.py", line 84, in
getDeviceDetails
(device_path, devid) = blkif.blkdev_name_to_number(dev)
TypeError: unpack non-sequence
Signed-off-by: KUWAMURA Shin'ya <kuwa@jp.fujitsu.com>
Keir Fraser [Mon, 30 Jun 2008 09:01:44 +0000 (10:01 +0100)]
Fix up python breakage for blkdev_name_to_number
Signed-off-by: Chris Lalancette <clalance@redhat.com>
Keir Fraser [Mon, 30 Jun 2008 09:00:53 +0000 (10:00 +0100)]
blktap: link against libgcrypt rather than libcrypto
tapdisk, part of blktap, links against libcrypto. tapdisk includes
GPLv2 (tapaio.c) and other licensed code (block-qcow.c). The license
of OpenSSL is considered incompatible with the GPL by many
people. This patch changes them to link against libgcrypt, which is
LGPL.
Signed-off-by: Bastian Blank <waldi@debian.org>
Keir Fraser [Mon, 30 Jun 2008 08:59:39 +0000 (09:59 +0100)]
x86: Px statistic update for cpu idle time.
Update px statistic, subtract cx idle time from px residency time.
Signed-off-by: Liu Jinsong <jinsong.liu@intel.com>
Keir Fraser [Mon, 30 Jun 2008 08:57:27 +0000 (09:57 +0100)]
stubdom: add live migration support by having ioemu just notify the
hypervisor about memory changes.
The impact on disk performance is typically making it from 71.5MBps
down to 70.5Mbps during the live migration. The impact on network
performance is actually even hard to measure.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Mon, 30 Jun 2008 08:51:34 +0000 (09:51 +0100)]
stubdom: fix libc-verbose non-lwip compilation
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Sat, 28 Jun 2008 15:29:00 +0000 (16:29 +0100)]
x86: Fix 32-bit build after VT-d cleanups.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 27 Jun 2008 16:54:27 +0000 (17:54 +0100)]
x86: Fix 32-bit build.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 27 Jun 2008 16:24:54 +0000 (17:24 +0100)]
x86: Emulation of LMSW must only affect CR0 bits 0-3.
Emulation of SMSW is only restricted to 16-bit operation on memory
operands.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 27 Jun 2008 15:20:59 +0000 (16:20 +0100)]
hvm: Fix lmsw handling
The lmsw instruction can be used to set CR0_PE, but can never clear
it, once set.
Signed-off-by: Trolle Selander <trolle.selander@eu.citrix.com>
Keir Fraser [Fri, 27 Jun 2008 15:16:47 +0000 (16:16 +0100)]
x86: Add cpufreq logic to S3 suspend/resume
When suspend to S3, stop the cpufreq dbs governor. When resume from
S3, firstly sync cpu state and freq at the 1st dbs timer; from 2nd dbs
timer on, cpufreq dbs governor control cpu px transfer according to
its workload algorithm. Px statistic is also handled.
Signed-off-by: Liu Jinsong <jinsong.liu@intel.com>
Keir Fraser [Fri, 27 Jun 2008 15:12:14 +0000 (16:12 +0100)]
Update changelog for xvd blkdev naming extensions.
Signed-off-by: Chris Lalancette <clalance@redhat.com>
Keir Fraser [Fri, 27 Jun 2008 15:09:58 +0000 (16:09 +0100)]
tools/python: blkdev_name_to_number fixes
Rework blkdev_name_to_number to allow the tools to attach xvd disks
beyond xvdp.
1. Adds the handling for the /dev/xvd[q-z] and /dev/xvd[a-i][a-z]
extended devices
2. Changes blkdev_name_to_number() to return a tuple of (xenbus,
devnum), and then deals with the resulting fallout.
Signed-off-by: Chris Lalancette <clalance@redhat.com>
Keir Fraser [Fri, 27 Jun 2008 15:08:56 +0000 (16:08 +0100)]
blktap: Extend userland busid to 32 bits
Signed-off-by: Chris Lalancette <clalance@redhat.com>
Keir Fraser [Fri, 27 Jun 2008 13:43:29 +0000 (14:43 +0100)]
hvm rombios: Move function calls out of 'post' function section
Through recent additions to the rombios the code section of the post
function has filled up considerably. When I enable the BX_TCGBIOS
compile time option the BIOS crashes since the post section code
(starts at $e05b) spills over into the nmi entry point (starts at
$e2c3). as86 doesn't cause an error when building.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
Keir Fraser [Fri, 27 Jun 2008 13:40:47 +0000 (14:40 +0100)]
vt-d: Clean up variable types and remove useless variables
Signed-off-by: Weidong Han <weidong.han@intel.com>
Keir Fraser [Fri, 27 Jun 2008 13:38:41 +0000 (14:38 +0100)]
shadow: Re-initialise page_info's lock field when freeing shadow pages.
Fixes boot failure of xenU after destroying a HVM guest.
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 27 Jun 2008 13:16:53 +0000 (14:16 +0100)]
ioemu: Clean up after cset 17646:
e3b13e1ecf6c
Remove redundant code.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Keir Fraser [Fri, 27 Jun 2008 13:15:11 +0000 (14:15 +0100)]
hvmloader: Set up any Intel ICH for legacy IDE.
Signed-off-by: Li Zhang <li.zhang@intel.com>
Keir Fraser [Fri, 27 Jun 2008 13:11:41 +0000 (14:11 +0100)]
vt-d: Minor fixing of interrupt remapping
When ir_ctrl->iremap_index == -1, it means there is no remap
entry. So it needn't to convert from remap format to normal ioapic
format.
Signed-off-by: Weidong Han <weidong.han@intel.com>
Keir Fraser [Fri, 27 Jun 2008 13:03:52 +0000 (14:03 +0100)]
tapdisk: Fix qcow2 for images > 2 GB
Signed-off-by: Kevin Wolf <kwolf@suse.de>
Keir Fraser [Fri, 27 Jun 2008 12:45:55 +0000 (13:45 +0100)]
x86, shadow: Fix OOS bug on domain teardown.
Signed-off-by: Gianluca Guida <gianluca.guida@eu.citrix.com>
Keir Fraser [Fri, 20 Jun 2008 17:42:45 +0000 (18:42 +0100)]
PV-GRUB: fix reiserfs 64bit support
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Fri, 20 Jun 2008 17:41:50 +0000 (18:41 +0100)]
Out-of-sync L1 shadows: always unsync pages on guest writes.
Signed-off-by: Gianluca Guida <gianluca.guida@eu.citrix.com>
Keir Fraser [Fri, 20 Jun 2008 17:41:09 +0000 (18:41 +0100)]
Out-of-sync L1 shadows: OOS snapshot.
Make snapshots of guest pages on unsync to allow faster revalidation
of OOS pages.
Signed-off-by: Gianluca Guida <gianluca.guida@eu.citrix.com>
Keir Fraser [Fri, 20 Jun 2008 17:40:32 +0000 (18:40 +0100)]
Out-of-sync L1 shadows: Fixup Tables
This patch implement a very simple non complete reverse map for OOS
pages writable mappings to avoid shadow brute-force search on resyncs.
Signed-off-by: Gianluca Guida <gianluca.guida@eu.citrix.com>
Keir Fraser [Fri, 20 Jun 2008 17:39:45 +0000 (18:39 +0100)]
Out-of-sync L1 shadows: OOS base
This patch implements the basic mechanisms to get pagetables out of
sync and back in sync again.
Signed-off-by: Gianluca Guida <gianluca.guida@eu.citrix.com>
Signed-off-by: Tim Deegan <tim.deegan@eu.citrix.com>
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
Keir Fraser [Fri, 20 Jun 2008 17:37:29 +0000 (18:37 +0100)]
PV-GRUB: compilation fix caused by 17880
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Fri, 20 Jun 2008 17:02:46 +0000 (18:02 +0100)]
AMD PowerNow! in Xen
This patch set moves support for AMD's PowerNow! technology from
dom0 into the hypervisor, now that there is support for
transferring ACPI data to the hypervisor. It will only work for
AMD processors that support the architectural P-state driver,
such as 3rd generation Opterons, Phenoms, and Turion Ultras.
This patch creates the Architectural P-state driver inside
of the Xen hypervisor and hooks it into the Xen code. It
has been tested at AMD with a variety of para- and fully-
virtualized guests for a week without regressions.
Signed-off-by: Mark Langsdorf <mark.langsdorf@amd.com>
Acked-by: Conny Seidel <conny.seidel@amd.com>
Keir Fraser [Fri, 20 Jun 2008 16:45:23 +0000 (17:45 +0100)]
minios: fix add_id_to_freelist(0)
add_id_to_freelist(0) would make get_id_from_freelist() always return 0.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Fri, 20 Jun 2008 16:44:50 +0000 (17:44 +0100)]
minios: do not systematically free the page under shared info, as the
guest booted by PV-GRUB will need it.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Fri, 20 Jun 2008 14:21:26 +0000 (15:21 +0100)]
Clean up domain_create() interface.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 20 Jun 2008 14:21:04 +0000 (15:21 +0100)]
x86 acpi: Clean up output tracing. Ensure it is synced to serial line
before entering Sx state.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 20 Jun 2008 11:26:23 +0000 (12:26 +0100)]
[IA64] compilation fix caused by 17880:
d3a87899985d
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Keir Fraser [Fri, 20 Jun 2008 11:18:10 +0000 (12:18 +0100)]
Compilation fix for x86_64 caused by 17880:
d3a87899985d.
Signed-off-by: Jean Guyader <jean.guyader@eu.citrix.com>
Keir Fraser [Thu, 19 Jun 2008 15:15:05 +0000 (16:15 +0100)]
libxc: The following patch replace the libxc interface to use
vcpu_guest_context_any_t (which is both 32 and 64 bits) instead of
vcpu_guest_context_t.
Signed-off-by: Jean Guyader <jean.guyader@eu.citrix.com>
Keir Fraser [Thu, 19 Jun 2008 10:09:10 +0000 (11:09 +0100)]
vmx: Clean up and fix guest MSR load/save handling:
1. msr_bitmap/msr_area/msr_host_area must be freed when a vcpu is
destroyed
2. vmx_create_vmcs()/vmx_destroy_vmcs() are only ever called once,
and can hence be simplified slightly
3. Change vmx_*_msr() interfaces to make it crystal clear that they
operate only on current (hence safe against vmwrite() and also
against concurrency races).
4. Change vmx_add_*_msr() implementation to make it crystal clear
that msr_area is not dereferenced before it is allocated.
Only (1) is a bug fix. (2)-(4) are for code clarity.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Isaku Yamahata [Thu, 19 Jun 2008 03:48:04 +0000 (12:48 +0900)]
[IA64] remove some #ifndef XEN using empty headerfiles.
move mm_numa.c from linux-xen to linux because now mm_numa.c is
identical to linux files.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Isaku Yamahata [Thu, 19 Jun 2008 03:48:04 +0000 (12:48 +0900)]
[IA64] remove unnecessary ia64_ksyms.c.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Keir Fraser [Wed, 18 Jun 2008 13:17:10 +0000 (14:17 +0100)]
x86: Must use a softirq to defer dom0 NMI
notification. tasklet_schedule() contains a spinlock and is unsafe in
NMI context.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Wed, 18 Jun 2008 10:55:34 +0000 (11:55 +0100)]
ioemu: Fix usbdevice parameter to encode vbd type.
usbdevice = "disk:<filename>"
expect a raw device (as this probably is the most usual case) and
usbdevice = "disk-qcow:<filename>"
expect a COW image (autodetected, probably qcow2).
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Keir Fraser [Wed, 18 Jun 2008 08:46:36 +0000 (09:46 +0100)]
x86: Intel wants the TSS busy flag set when we do a vmentry.
Signed-off-by: Jean Guyader <jean.guyader@eu.citrix.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Wed, 18 Jun 2008 08:40:39 +0000 (09:40 +0100)]
ioemu: generic PCI device config-space emulation
This patch is an extension for qemu-dm to enable emulation of generic
PCI devices. The information for the PCI devices can be passed by
command line parameter.
The command line parameter is "-pciemulation" followed by the
information which contains a label and hex value of the configuration
registers separated by ":".
The configuration registers for each PCI device are below.
vendorid
deviceid
command
status
revision
classcode
headertype
subvendorid
subsystemid
interruputline
interruptpin
This is an example of command line parameter.
-pciemulation hba1:1240:0780:0002:0:0:010000:0:10b5:0777:05:1
Signed-off-by: Shinji Matsumoto <smatsumoto@marathontechnologies.com>
Keir Fraser [Wed, 18 Jun 2008 08:39:14 +0000 (09:39 +0100)]
ioemu: Disable format auto-probing in monitor command change
Format auto-probing of writable images is a security hole. The last
known remaining instance is monitor command change. Disable probing
there and use raw. This breaks change for images in all other
formats.
Signed-off-by: Markus Armbruster <armbru@redhat.com>
Keir Fraser [Wed, 18 Jun 2008 08:38:11 +0000 (09:38 +0100)]
minios: fix gnttab allocation boundary
The gnttab_sem is already fed during initialization's put_free_entry
loop.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Wed, 18 Jun 2008 08:37:40 +0000 (09:37 +0100)]
doc: Describes a generic 686 via the cpuid configure.
Signed-off-by: Jean Guyader <jean.guyader@eu.citrix.com>
Keir Fraser [Wed, 18 Jun 2008 08:36:47 +0000 (09:36 +0100)]
Add PV-GRUB
This fetches GRUB1 sources, applies the {graphical, print function,
save default, and ext3_256byte} patches from debian, and applies a
patch to make it work on x86_64 and port it to Mini-OS. By using
libxc, PV-GRUB can then "kexec" the loaded kernel from inside the
domain itself, hence permitting to avoid the security-concerned
pygrub.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Wed, 18 Jun 2008 08:35:06 +0000 (09:35 +0100)]
minios: fix declaration after code
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Wed, 18 Jun 2008 08:34:26 +0000 (09:34 +0100)]
mm.c: use local variable domain pointer
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
Keir Fraser [Wed, 18 Jun 2008 08:32:50 +0000 (09:32 +0100)]
stubdom: fix using minios frontends directly when libc is actived
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Tue, 17 Jun 2008 08:36:25 +0000 (09:36 +0100)]
minios,stubdom: Add OBJ_DIR parameter to compile outside sources,
which permits to easily compile mini-os in various flavors. Also clean
some parts of stubdom build.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Tue, 17 Jun 2008 08:35:36 +0000 (09:35 +0100)]
ioemu: move xenfb frontend (used by stubdom) to its own file, since it
does not really belong to hw/, but to /, like sdl.c and vnc.c.
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
Keir Fraser [Mon, 16 Jun 2008 15:35:17 +0000 (16:35 +0100)]
[IA64] trivial compilation fix caused by c/s 17847:
8a0415fac759.
This patch fixes the following compilation error caused
by c/s 17847:
8a0415fac759.
machine_kexec.c: In function 'arch_crash_save_vmcoreinfo':
machine_kexec.c:201: error: 'frametable_pg_dir' undeclared (first use in this function)
machine_kexec.c:201: error: (Each undeclared identifier is reported only once
machine_kexec.c:201: error: for each function it appears in.)
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
Keir Fraser [Mon, 16 Jun 2008 14:22:41 +0000 (15:22 +0100)]
vmx: Allow restore of context from a non-Intel processor. In
particular, VMX requires segment 'granularity' to be set correctly, so
we force it if need be in vmx_set_segment_register().
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Mon, 16 Jun 2008 14:21:49 +0000 (15:21 +0100)]
amd svm: Do not touch (non-existent) attr and selector fields for GDTR
and IDTR in the VMCB in svm_set_segment_register(). This is just for
clarity of code and to prevent any issues in the future.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Mon, 16 Jun 2008 10:49:15 +0000 (11:49 +0100)]
vt-d: Quieten down overzealous logging.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Mon, 16 Jun 2008 10:24:17 +0000 (11:24 +0100)]
x86_emulate: Fix the segment-load function
Fix the non-conforming type check and uses the consistent method to
fetch the cpl value as function get_cpl().
Also make sure vm86 mode is properly handled when determining whether
in real mode or protected mode -- in various respects vm86 mode can
act like both.
Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 13 Jun 2008 15:10:50 +0000 (16:10 +0100)]
32-on-64: Fix compat-access macros to use correct underlying HVM accessors.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 13 Jun 2008 14:31:35 +0000 (15:31 +0100)]
pv-on-hvm: Fix panic-handler code to work on wider range of kernels.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 13 Jun 2008 13:15:00 +0000 (14:15 +0100)]
Bring back console_start_log_everything() as a milder alternative to
console_start_sync(). Revert keyhandler logic to use it. The
difference now is that serial logic is updated to not drop characters
if inb a log_everything region. Still this is milder than a sync
region since the async buffer must be filled before we start to
busy-wait on each character.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Keir Fraser [Fri, 13 Jun 2008 12:55:50 +0000 (13:55 +0100)]
[ACM] Pass uuid to created policy
A UUID needs to be passed to the created policy.
Signed-off-by: stefan Berger <stefanb@us.ibm.com>
Keir Fraser [Fri, 13 Jun 2008 12:55:19 +0000 (13:55 +0100)]
[ACM] Enable labeling of resources as inaccessible
Enable the labeling of (disk-type) resources with the special label
__INACCESSIBLE__ to prevent unlabeled domains from accessing them.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>