Commit Graph
17947 Commits
Author SHA1 Message Date
Keir Fraser de4e084064 stubdom: PCI passthrough support via PV-PCI
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-02 13:54:20 +01:00
Keir Fraser dac6f79804 pciif: do not depend on linux' msix_entries
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-02 13:37:16 +01:00
Keir Fraser 85b9d198e0 x86: Remove inline declaration to fix build.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-02 10:56:37 +01:00
Keir Fraser badc969545 ioemu: Add check for mapping MSI pirqs.
From: Haitao Shan <haitao.shan@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-02 09:45:18 +01:00
Keir Fraser 94ab7ad96b x86: Fix MSI cleanup.
Fixes bugzilla bug #1279.

From: Haitao Shan <haitao.shan@intel.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-07-02 09:44:09 +01:00
Keir Fraser aa506f9185 xend: Replace stray tab-indent with space-indent
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2008-07-02 09:42:37 +01:00
Isaku Yamahata 3819ac39eb merge with xen-unstable.hg 2008-07-02 11:30:37 +09:00
Keir Fraser 1e25c34bdc minios: proper frees are now handled, so drop the FIXME comment
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-07-01 14:50:35 +01:00
Keir Fraser 38e7a8f94f 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>
2008-07-01 13:27:41 +01:00
Keir Fraser f1ba06c0f4 VT-d: Fix queue invalidation
Correct invalidate_sync(), and clean up qinval_setup().

Signed-off-by: Weidong Han <weidong.han@intel.com>
2008-07-01 11:41:43 +01:00
Keir Fraser 920bd99d37 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>
2008-07-01 11:40:55 +01:00
Keir Fraser b484177fb7 xenballoond (memory overcommit) scripts
See the README and conf files for more info.

Signed-off-by: Dan Magenheimer <dan.magenheimer@oracle.com>
2008-07-01 11:40:07 +01:00
Keir Fraser 9c28c1b8b9 ioemu: limit xen-console buffering
Set dom->buffer.max_capacity to xend configured limit.

Signed-off-by: Pat Campbell <plc@novell.com>
2008-07-01 11:38:51 +01:00
Keir Fraser 03f7fd7c9f 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>
2008-07-01 10:59:09 +01:00
Keir Fraser da67ff89f7 xend: improve the rotation of qemu-dm logfiles.
Signed-off-by: Yosuke Iwamatsu <y-iwamatsu@ab.jp.nec.com>
2008-07-01 10:58:43 +01:00
Keir Fraser 1be51142f1 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>
2008-06-30 14:19:09 +01:00
Keir Fraser 04465fbeb9 blktap: Fall back to libcrypto if libgcrypt is not installed.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-06-30 11:39:10 +01:00
Keir Fraser dd258ce6c0 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>
2008-06-30 10:02:21 +01:00
Keir Fraser 2bb1ceab62 Fix up python breakage for blkdev_name_to_number
Signed-off-by: Chris Lalancette <clalance@redhat.com>
2008-06-30 10:01:44 +01:00
Keir Fraser 53a29c4ca7 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>
2008-06-30 10:00:53 +01:00
Keir Fraser 0fa687ee1d 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>
2008-06-30 09:59:39 +01:00
Keir Fraser 7d03c1bec2 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>
2008-06-30 09:57:27 +01:00
Keir Fraser b4e6f01f78 stubdom: fix libc-verbose non-lwip compilation
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-06-30 09:51:34 +01:00
Keir Fraser 91b3708d95 x86: Fix 32-bit build after VT-d cleanups.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-06-28 16:29:00 +01:00
Keir Fraser 92bfffd216 x86: Fix 32-bit build.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-06-27 17:54:27 +01:00
Keir Fraser 41d0fcff57 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>
2008-06-27 17:24:54 +01:00
Keir Fraser 80982c971f 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>
2008-06-27 16:20:59 +01:00
Keir Fraser c5699e2771 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>
2008-06-27 16:16:47 +01:00
Keir Fraser 574ddbcf16 Update changelog for xvd blkdev naming extensions.
Signed-off-by: Chris Lalancette <clalance@redhat.com>
2008-06-27 16:12:14 +01:00
Keir Fraser bbc24abfb2 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>
2008-06-27 16:09:58 +01:00
Keir Fraser 4fe815abd1 blktap: Extend userland busid to 32 bits
Signed-off-by: Chris Lalancette <clalance@redhat.com>
2008-06-27 16:08:56 +01:00
Keir Fraser da43e50cb3 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>
2008-06-27 14:43:29 +01:00
Keir Fraser 7037c279e6 vt-d: Clean up variable types and remove useless variables
Signed-off-by: Weidong Han <weidong.han@intel.com>
2008-06-27 14:40:47 +01:00
Keir Fraser 2be6d58ce6 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>
2008-06-27 14:38:41 +01:00
Keir Fraser 60b316162b ioemu: Clean up after cset 17646:e3b13e1ecf6c
Remove redundant code.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
2008-06-27 14:16:53 +01:00
Keir Fraser 9a5fd91e50 hvmloader: Set up any Intel ICH for legacy IDE.
Signed-off-by: Li Zhang <li.zhang@intel.com>
2008-06-27 14:15:11 +01:00
Keir Fraser 65daf3ef4e 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>
2008-06-27 14:11:41 +01:00
Keir Fraser c8af9ce961 tapdisk: Fix qcow2 for images > 2 GB
Signed-off-by: Kevin Wolf <kwolf@suse.de>
2008-06-27 14:03:52 +01:00
Keir Fraser 6ee2f5693f x86, shadow: Fix OOS bug on domain teardown.
Signed-off-by: Gianluca Guida <gianluca.guida@eu.citrix.com>
2008-06-27 13:45:55 +01:00
Keir Fraser 40f4c996cd PV-GRUB: fix reiserfs 64bit support
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-06-20 18:42:45 +01:00
Keir Fraser d067e4b077 Out-of-sync L1 shadows: always unsync pages on guest writes.
Signed-off-by: Gianluca Guida <gianluca.guida@eu.citrix.com>
2008-06-20 18:41:50 +01:00
Keir Fraser 047782fa01 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>
2008-06-20 18:41:09 +01:00
Keir Fraser 7ee9469202 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>
2008-06-20 18:40:32 +01:00
Keir Fraser 3c7fba7fd8 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>
2008-06-20 18:39:45 +01:00
Keir Fraser 63043beac5 PV-GRUB: compilation fix caused by 17880
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-06-20 18:37:29 +01:00
Keir Fraser fd9d7bdc9e 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>
2008-06-20 18:02:46 +01:00
Keir Fraser 639f3f1a22 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>
2008-06-20 17:45:23 +01:00
Keir Fraser 0e05d6cdd8 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>
2008-06-20 17:44:50 +01:00
Keir Fraser e0dd5c3b38 Clean up domain_create() interface.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-06-20 15:21:26 +01:00
Keir Fraser 767332506f 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>
2008-06-20 15:21:04 +01:00