Commit Graph
18145 Commits
Author SHA1 Message Date
Keir Fraser 2d05476a74 Update Xen version for 3.3.0-rc1. 3.3.0-rc1 2008-07-25 15:01:59 +01:00
Keir Fraser 07740ee912 Add some directories created by the stubdom build to .hgignore.
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2008-07-25 14:01:31 +01:00
Keir Fraser 26c26ff17a x86_emulate: fix unintended writeback on cmp/test instructions
This patch fixes an issue when x86_emulate is called with
force_writeback=1 set. It resulted in cmp and test instructions with
memory operands to have the mem value written back after instruction
emulation finished. This caused false alarms on writes to RO mem, and
might have caused other issues if unintended writes occured to device
registers in mmio space.

Signed-off-by: Trolle Selander <trolle.selander@eu.citrix.com>
2008-07-25 14:00:27 +01:00
Keir Fraser f6e4baff82 Support using a specific branch or tag of ioemu-remote
With this patch you can set QEMU_TAG to check out a specific version.
When we set it, QEMU_TAG ought to be in Config.mk, I think.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2008-07-25 13:59:07 +01:00
Keir Fraser cead514ad8 xend: fix dual destroy
After changeset 18030 and 18064 were checked in, I found some issues
when creating HVM domains with devices assigned.

Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
2008-07-25 13:58:23 +01:00
Keir Fraser ee7be8aa51 stubdom: avoid re-making mk-headers and thus newlib etc.
Using a stamp file for mk-headers permits to avoid to re-run newlib
configuration etc.

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-25 10:06:53 +01:00
Keir Fraser 2406df9ada fs-backend: fix FD allocation for file creation
The creation operation also opens a file, we need to allocate a
virtual fd for that too.

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-25 09:49:06 +01:00
Keir Fraser 410dbc38e8 x86: adds put_domain() for breaks in arch_do_domctl().
Signed-off-by: Weidong Han <weidong.han@intel.com>
2008-07-25 09:47:41 +01:00
Keir Fraser 4ae5a52192 vtd: change code style of pci.c file, and add spin_unlock(&pdev->lock)
when iommu_add_device() fails.

Signed-off-by: Weidong Han <weidong.han@intel.com>
2008-07-25 09:46:27 +01:00
Keir Fraser e8424702c5 vtd: There is only one INCLUDE_ALL DMAR unit in system, but no
restriction on whether it's the last unit.

Signed-off-by: Weidong Han <weidong.han@intel.com>
2008-07-25 09:45:41 +01:00
Keir Fraser fa88cfadf9 vt-d: Map RMRR in intel_iommu_add_device() if the device has RMRR;
move domain_context_mapping() to be in front of list_move() in
reassign_device_ownership().

Signed-off-by: Weidong Han <weidong.han@intel.com>
2008-07-25 09:44:48 +01:00
Keir Fraser dba5b800e3 stubdom: fix do_xen_hypercall error report
call.result is an unsigned long

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-25 09:40:14 +01:00
Keir Fraser c4241bc454 stubdom: make sure to use old tree for now
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-24 17:36:27 +01:00
Keir Fraser ae41a026ab minios: grant table map (gntdev) bug fixes
* Uninitialized dev_bus_addr argument to GNTTABOP_unmap_grant_ref
   results in an angry hypervisor.
 * Set errno in libxc and return -1 on error.
 * op.status is a int16_t, so it should be printed with PRId16.
 * Don't print domids[0] or refs[0] if the ptr is NULL. It's more
   polite to crash later, after the message has been printed.

Signed-off-by: Diego Ongaro <diego.ongaro@citrix.com>
2008-07-24 17:34:50 +01:00
Keir Fraser b45184b0fc minios: Fix build on some gcc versions.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-24 17:33:40 +01:00
Keir Fraser 499da5e253 tools: use $(PREFIX) rather than hard-coding /usr
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2008-07-24 14:33:28 +01:00
Keir Fraser 6f79893756 tools: remove type parameter from xc_physdev_map_pirq{,_msi}()
... as it's implied by the function name.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2008-07-24 14:18:58 +01:00
Keir Fraser 26b4c342ea x86: rename MSI option
Also rename the variable and move its declaration to a header.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2008-07-24 14:18:05 +01:00
Keir Fraser 4fc2348da5 x86/32on64: add missing physdev compat mode definitions
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2008-07-24 14:17:14 +01:00
Keir Fraser c039177d82 x86: XENPF_set_processor_pminfo handler adjustments
Only handle information passed up from dom0 when actually controlling
the respective functionality. Only count up CPUs once for each CPU.
Allow dom0 to provide information incrementally.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2008-07-24 14:16:47 +01:00
Keir Fraser 7d0b678231 minios: grant table map (gntdev) for minios
I've implemented a grant map for mini-os to support the xc_gnttab_*()
functions, the equivalent of gntdev in linux. This is useful for my
work in putting xenstored in a stub domain.

Signed-off-by: Diego Ongaro <diego.ongaro@citrix.com>
2008-07-24 14:14:27 +01:00
Keir Fraser b5d7ddffa7 ioemu: fix spurious track_dirty_vram warning
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-24 14:12:46 +01:00
Keir Fraser 597e548eef mini-os: select call incorrectly reports xce_handle as ready
The current implementation in minios of xc_evtchn_pending doesn't set
read=0 when there is exactly one port pending. This resulted in
select() incorrectly reporting the file descriptor as ready.

Signed-off-by: Diego Ongaro <diego.ongaro@citrix.com>
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-24 14:11:47 +01:00
Keir Fraser fd6a37dbdc pv-grub: re-implement xc_map_foreign_ranges
Also get rid of va and npages members of privcmd_mmap_entry since we
do not need them any more.

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-24 14:10:45 +01:00
Keir Fraser 0905190686 rombios: S3 resume data must be in EBDA.
Rombios itself is read-only.

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-24 13:44:08 +01:00
Keir Fraser d4a22e75c9 blktap: Clean *.opic on 'make clean'.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-24 11:19:13 +01:00
Keir Fraser 28f8960f3e libxc: Fix after xc_map_foreign_ranges() patch.
Must munmap() region after loading elf image.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-24 11:18:53 +01:00
Keir Fraser ce29ad450c libxc: Clean up xc_map_foreign_ranges() interface to hide the
underlying mmap() invocation.

From: Christoph Egger <Christoph.Egger@amd.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-23 16:39:46 +01:00
Keir Fraser 6de959a1f6 hvm: Fix intra-vga-mem mmio in stdvga.c
The current stdvga code never checks if the copy_from/to_guest calls
fail, and thus silenty fails if both sides of an IOREQ_COPY points
into mmio space. This patch fixes this and makes the code correctly
handle intra-vga-mem copies, as well as log & turn off caching if some
more "exotic" type of mmio (say, copy from vga mem to some other
device's iomem), so that such mmio reqs will fall through to regular
ioemu where they can hopefully be handled correctly.

In practice, this patch fixes a number of graphical glitches for
guests running in standard vga mode, including a corrupted OS/2 boot
graphic.

Signed-off-by: Trolle Selander <trolle.selander@eu.citrix.com>
Signed-off-by: Keir Fraser <keir.fraser@eu.citrix.com>
2008-07-23 13:31:57 +01:00
Keir Fraser 9cd4e059ae vtd: no need to flush iotlb or write buffer in iommu_page_mapping().
Signed-off-by: Weidong Han <weidong.han@intel.com>
2008-07-23 09:59:21 +01:00
Keir Fraser 597683c799 vtd: During parsing DMAR table, if find RMRR is incorrect, return error.
Signed-off-by: Weidong Han <weidong.han@intel.com>
2008-07-23 09:58:48 +01:00
Keir Fraser ebb9d5bee5 ioemu: Fix hvmloader erroneous debugging prints
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2008-07-22 16:03:45 +01:00
Keir Fraser 59ec6ab1b6 ioemu: fix vram tracking when !s->lfb_addr
When we don't have an LFB (standard VGA), we can not and do not need
vram tracking at all since we always get explicit dirtying.

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-22 15:57:19 +01:00
Keir Fraser 23b812f67f x86/64: Account for allocation bitmap by making Xen heap appropriately larger.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-22 13:36:56 +01:00
Keir Fraser 7d621b2b12 x86: Fix the dom0 booting hang when VT-d is enabled.
Dom0 C/S 593 hooks the pci bus probe and remove function. When
probing a function at booting time, it will first add the device into
Dom0's list through a hypercall, then execute the driver's probe
function. If the probe function fails, another hypercall is called to
remove the device from Dom0's list. But for some RMRR devices, for
example, USB devices, they may still be in use for some operation by
BIOS at booting time. So when removing those kind of devices, we
should still keep the RMRR information.

Also add a small fix for "for_each_rmrr_device".

Signed-off-by: Dongxiao Xu <dongxiao.xu@intel.com>
Signed-off-by: Weidong Han <weidong.han@intel.com>
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
2008-07-22 11:56:26 +01:00
Keir Fraser 33b7b2161a xend balloon: portability cleanup
Move the linux specific labels to osdep where they
belong. Modification on Solaris code ok'd by SUN (Ryan Scott).

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
2008-07-22 11:55:06 +01:00
Keir Fraser 0c9c2001df Fix a typo in the macro PCI_BDF2()
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
2008-07-22 08:01:56 +01:00
Keir Fraser 76db343592 fs-back: fix compilation error.
XC_PAGE_SIZE and XC_PAGE_MASK should be used instead of PAGE_SIZE
and PAGE_MASK.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2008-07-22 08:00:43 +01:00
Keir Fraser a395f12adb x86 hvm: stubdom and hvmloader always live under /usr/lib, never /usr/lib64
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-22 07:59:44 +01:00
Keir Fraser 5a932f3328 doc: Fix multi-core amd example
Signed-off-by: Jean Guyader <jean.guyader@eu.citrix.com>
2008-07-21 16:24:19 +01:00
Keir Fraser 518aee2780 tools: cpuid inputs must be 32 character long if hexadecimal value is
not used.

Signed-off-by: Jean Guyader <jean.guyader@eu.citrix.com>
2008-07-21 14:03:26 +01:00
Keir Fraser 19aa4a65a3 libxc: add xc_gnttab_map_domain_grant_refs.
xc_gnttab_map_domain_grant_refs permits to simply map several pages
from the same domain.

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-21 14:02:53 +01:00
Keir Fraser 0bfcf984b7 x86: Reintroduce clocksource=tsc.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-21 10:39:15 +01:00
Keir Fraser 7f6d517c52 Revert accidental commit from 18096:fa66b33f975a8f 2008-07-21 10:00:18 +01:00
Keir Fraser 6bee9dd132 Fix debug key t to avoid irq jitter.
From: Dan Magenheimer <dan.magenheimer@oracle.com>
Siigned-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-21 09:49:40 +01:00
Keir Fraser 418ce6a531 xend: Fix keymap handling
Patch allows keymap to be specified inside vfb description and
allows VM configured keymap setting to override XenD default

Signed-off-by: Pat Campbell <plc@novell.com>
2008-07-21 09:47:07 +01:00
Keir Fraser d84cb0723c x86: More accurate PIT frequency estimation (1193182Hz)
In practice this has no impact since variance between crystals will be
substantially greater than 1-2ppm. But we may as well be as accurate
as possible.

From: Dan Magenheimer <dan.magenheimer@oracle.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-21 09:46:17 +01:00
Keir Fraser 9829c9f3ec [XSM][FLASK] Remove unused code from XSM and Flask
The complete_init hook has been unused since the introduction of the
create secure interface for domain_create.

Signed-off-by: George Coker <gscoker@alpha.ncsc.mil>
2008-07-21 09:42:30 +01:00
Keir Fraser 2325e69721 [XSM][FLASK] Argument handling bugs in XSM:FLASK
Addresses a number of argument handling bugs in the flask_op hypercall
in the XSM:Flask module.  Thanks to Rafal Wojtczuk at McAfee for
reporting the issues and Tim Deegan at Citrix for providing an
initial patch.

This patch addresses the following issues:
 - bounds checking and validation on input arguments to flask_op
 - updated ABI/API, size and cmd are now uint32_t
 - updated userspace tools and libraries to account for ABI/API
 changes
 - implemented all copies using from/to guest, better portability
 - implemented upper bounds checking on op->cmd, op->size
 - implemented sanity checking on op->size and op->buf
 - implemented bit vector for checking from/to usage on op->cmd

Signed-off-by: George Coker <gscoker@alpha.ncsc.mil>
2008-07-21 09:41:36 +01:00
Keir Fraser 39f22f5e08 Update .hgignore 2008-07-21 09:40:37 +01:00