Commit Graph
11244 Commits
Author SHA1 Message Date
kfraser@localhost.localdomain 55bfac8dfd [XEN] Fix the x86 emulator to safely fail when it turns out the
faulting memory access was to/from an implicit memory operand
(typically either an instruction fetch or stack access).
Rationalise use of macros for page fault error code flags.
This patch supercedes the fix in changeset 11242.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-23 18:38:08 +01:00
Steven Hand c4ea6f0c90 Don't emulate faulting writes to stack. May fix a number of recent hvm
bugs with the new shadow code. A more complete clean-up of the emulation
code will follow.

Signed-off-by: Steven Hand <steven@xensource.com>
2006-08-23 17:25:11 +01:00
kfraser@localhost.localdomain db51cd09d3 Remove all traces of the obsolete BVT scheduler.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-23 17:14:38 +01:00
kfraser@localhost.localdomain ae95fdf65a [TOOLS] Remove the 'cpuperf' misc tool. Xenoprof is the
correct tool to use for hardware perfctr monitoring now.
Also remove unused xc_msr MSR accessor functions from libxenctrl.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-23 15:02:55 +01:00
Ian Campbell dfeb46aa49 [TOOLS] Add a simple tool to display the Xen specific ELF notes.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-23 14:43:48 +01:00
Ian Campbell b543b44c65 [XEN/LINUX] Define Xen ELF notes in kernel header and update dom0 builder.
ELF notes provide a cleaner interface for passing Xen specific
information from the kernel to the domain builder than the existing
__xen_guest section string. The __xen_guest string is retained in
kernels built with 3.0.2 compatability for domU however dom0 requires
the new interface.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-23 14:41:05 +01:00
Ian Campbell 15d8f355a2 [TOOLS] Allow tools to load kernels which use an ELF notes segment.
Compatability with kernels using the __xen_guest section is retained.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-23 14:37:39 +01:00
Ian Campbell 6ed4ba685f [XEN] Define the types to be used with Xen in the ELF notes section.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-23 14:36:09 +01:00
Ian Campbell 0bf6399354 [LINUX] Define ELFNOTE as a preprocessor macro rather than an assembler macro
Assembler .macros have various issues with string arguments and :varargs.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-23 14:34:25 +01:00
kfraser@localhost.localdomain 829f87e018 [XEN] Fix pirq_guest_unbind(). Remove unnecessary code
(in fact flush_all_pending_eoi() was broken!).
Based on a patch from Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-23 11:27:06 +01:00
Ian Campbell b5095eb510 merge 2006-08-22 18:51:02 +01:00
Ian Campbell 8086b5b00e [XEN] Remove some accidentally commited debug code
from dom0 domain builder.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-22 18:50:22 +01:00
kfraser@localhost.localdomain 07f2bdb30d [SHADOW] Clean up the DOM0_SHADOW_OP interface.
Also bump the dom0 interface version for tools (but
not for dom0 kernel!).
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-22 18:50:01 +01:00
Ian Campbell 23e735cadd merge 2006-08-22 18:48:00 +01:00
Ian Campbell 46b2b91e50 [XEN] Revert changes to dom0 domain builder made by cset 11226.
We require that the dom0 domain builder still sets _PAGE_USER.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-22 18:47:29 +01:00
kfraser@localhost.localdomain b3ea76b1e0 [HVM] Clean ups for PV-on-HVM drivers. In particular, platform-pci
driver can now handle multi-page hypercall stub areas.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-22 17:16:58 +01:00
Ian Campbell b1851948f1 [LINUX] Update x86/64 ELF note patch to version accepted upstream.
Signed-off-by: Ian Campbell <ian.campbell@xesource.com>
2006-08-22 15:55:43 +01:00
kfraser@localhost.localdomain 314ded7410 [x86_64] Guests no longer set _PAGE_USER on kernel mappings.
This may allow guest kernels to be run outside ring 3 in future, and
also provides scope for optimisations today (e.g., using global bit on
user mappings).

Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-22 15:26:40 +01:00
Christian Limpach 6631e301e8 [hvm] Export gpfn of store page to guest - not mfn.
Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2006-08-22 15:13:07 +01:00
Anil Madhavapeddy 973bbebcc3 Make add_to_bridge() always leave the device up even when it bails out due to the device already being present on the bridge.
This makes the script more idempotent if run twice (e.g. from hotplug and udev), since the second time the device will be taken down and not brought up again, leaving the host without networking.

Signed-off-by: Anil Madhavapeddy <anil@xensource.com>
2006-08-22 14:59:16 +01:00
Ian Campbell 5db8d219b0 [LINUX] Support creating ELF note segments in the kernel ELF image.
i386 version is taken from 2.6.18-rc4-mm1 and x86_64 version has been
submitted for inclusion.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-22 12:20:43 +01:00
Ian Campbell 13f031199f merge. 2006-08-22 11:34:46 +01:00
kfraser@localhost.localdomain 2da679e04b [XEN] Debug builds check for correct usage of percpu areas.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-22 11:33:59 +01:00
Ian Campbell d08c8d1fee [LINUX] Revert bits of cset 11202 since they break the -xenU build for x86/64.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-22 11:30:13 +01:00
kfraser@localhost.localdomain fe88c68919 [XEN] Clean up some x86 bootstrap code. Replace some CPU iterators
with for_each_cpu() -- we want to ensure that per_cpu areas are
accessed only for cpus in cpu_possible_map.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-22 11:19:48 +01:00
George Dunlap 9caa57d3c6 Added option to xentrace to set the trace buffer size.
Signed-off-by: George Dunlap <gdunlap@xensource.com>
2006-08-21 12:05:11 -04:00
kfraser@localhost.localdomain 8e12161aac [XEN] Remove bogus assertion.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-21 13:36:05 +01:00
Steven Hand 17d1c94ebf Fix assertion.
Signed-off-by: Steven Hand <steven@xensource.com>
2006-08-21 13:21:51 +01:00
kfraser@localhost.localdomain 8521f115cb [XEN] Revert patch 11213.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-21 11:51:54 +01:00
kfraser@localhost.localdomain 6e0dabc158 [XEN] Fix maddr_from_mapped_domain_page().
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-21 11:39:27 +01:00
kfraser@localhost.localdomain 09b0652c8f [XEN] Fix shadow2 integration with writable-pagetable logic.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-21 10:28:02 +01:00
kfraser@localhost.localdomain 900141440c [XEN] Remove unnecessary printk from invalid opcode debug output.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-21 09:01:53 +01:00
Christian Limpach d9e6579356 [xend] Add 'xend_config_format' field to the Xend information block.
When running 'xm info' it appears thus:

 # xm info
 host                   : 10.13.4.252
 release                : 2.6.17-1.2157_FC5xen0
 version                : #1 SMP Tue Jul 11 23:30:05 EDT 2006
 machine                : x86_64
 ...snipped rest of data...
 cc_compile_domain      : build.redhat.com
 cc_compile_date        : Tue Jul 11 22:50:42 EDT 2006
 xend_config_format     : 2

It will also appear in the SEXPR returned when doing a GET on the
/xend/node path in XenD's HTTP service:

 (node
   (system Linux)
   (host 10.13.4.252)
   (release 2.6.17-1.2157_FC5xen0)
   (version '#1 SMP Tue Jul 11 23:30:05 EDT 2006')
   (machine x86_64)
   ...snipped rest of data...
   (cc_compile_domain build.redhat.com)
   (cc_compile_date 'Tue Jul 11 22:50:42 EDT 2006')
   (xend_config_format 2)
 )

The patch sets the format to value '2' to indicate that we're on the version
with the new style HVM configuration for CDROM devices. The old style having
implicitly been version '1'.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2006-08-21 00:11:17 +01:00
Christian Limpach ea4987ba04 [qemu patches] Update patches for changeset 11209:9bb6c1c1890a.
Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2006-08-21 00:01:11 +01:00
Christian Limpach 113654b9fe [qemu] hdparm tunable IDE write cache for HVM
qemu 0.8.2 has a flush callback to the storage backends, so now it is
possible to implement hdparm tunable IDE write cache enable/disable for
guest domains, allowing people to pick speed or data consistency on a
case by case basis.

As an added benefit, really large LBA48 IOs will now no longer be broken
up into smaller IOs on the host side.

From: Rik van Riel <riel@redhat.com>
Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2006-08-20 23:59:34 +01:00
Christian Limpach a9d5932706 [qemu patches] Update patches for changeset 11206:fc3e7e65b953.
Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2006-08-20 23:52:39 +01:00
Christian Limpach 2ed7175b63 [qemu patches] Update patches for changeset 11206:fc3e7e65b953.
Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2006-08-20 23:34:17 +01:00
Christian Limpach 03a84fa9bd [qemu] Allow booting from more than one device.
The rombios supports trying to boot from more than one device and then
falling back.  Set 'boot=dc' in your config file to try booting first
from the CD and then the hard drive.

Based on a patch from: Jeremy Katz <katzj@redhat.com>
Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2006-08-20 23:33:28 +01:00
kaf24@localhost.localdomain 3b1ac249b0 [XEN] More shadow2 cleanups -- primarily moving arch vcpu/domain
fields into separate shadow2-specific structures.
Also rename shadow2_entry_points to shadow2_paging_mode.
Remove VCPUF_shadow2_translate_mode and replace with a better-named
field in vcpu.arch.shadow2
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-20 17:55:33 +01:00
kaf24@localhost.localdomain d87addffb1 [XEN] Clarify x86 hypercall ABI in public header comments.
In particular: x86/64 *does* clobber its ragument registers
(just like i386). This happens in debug builds, and if a
continuation is created.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-19 17:07:54 +01:00
kaf24@localhost.localdomain e7b9a93ed4 [XENBUS] Allow user of xenbus_read_driver_state() to distinguish
absence of state field in xenstore by returning XenbusStateUnknown
rather than XenbusStateClosed.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-19 14:28:10 +01:00
kaf24@localhost.localdomain 35f4fc005c [LINUX] Replace uses of CONFIG_XEN_PRIVILEGED_GUEST with is_initial_xendomain().
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2006-08-19 12:08:12 +01:00
kaf24@localhost.localdomain ef0e2fc8dc [HVM][VMX] Don't update the EIP on debug register accesses
On debug register accesses, the EIP should not be updated.
Because of the way that lazy save/restore of the debug
registers is implemented, this initial debug register access
is lost.

Signed-off-by: Travis Betak <travis.betak@amd.com>
2006-08-19 12:07:07 +01:00
kaf24@localhost.localdomain cd93eaf1c7 [HVM] Fix SMBIOS entry point copy destination.
Spotted by Xiaowei Yang <xiaowei.yang@intel.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-19 12:06:36 +01:00
kaf24@localhost.localdomain 9f60d1c88b [NET] front: Fix receive path for auto-translated guests, so that
driver balloon allowance is properly accounted.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-19 11:39:04 +01:00
kaf24@localhost.localdomain b08720f7e4 [XEN] Make some implicit header includes explicit.
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-08-19 11:13:17 +01:00
kaf24@localhost.localdomain 8da2f6c59c [NET] front: Fix tx buffer leak in teardown path. Fix rx-buffer
cleanup: cannot free skbuffs until their memory is remapped by
multicall.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-19 11:08:40 +01:00
kaf24@localhost.localdomain 587411253f [NET] front: Fix rx buffer leak when tearing down an interface.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-08-19 10:58:07 +01:00
kaf24@localhost.localdomain a2a686df00 [XENBUS] Cleanup correctly on suspend, unregister watches.
Again needed for domU kexec, so the next kernel instance can register
watches without running into -EBUSY.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-08-19 10:21:02 +01:00
kaf24@localhost.localdomain 7d0aeaacea [NET/BLK] back: Change the netback and blkback device drivers to allow
and handle frontend state transition from "Closing" to "Initialising".
Instead of destroying the backend device then they wait for a
reconnect from the frontend.  Needed for domU kexec support, to hand over
devices from one kernel instance to the next.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-08-19 10:20:08 +01:00