Commit Graph
8579 Commits
Author SHA1 Message Date
kaf24@firebug.cl.cam.ac.uk 8a3652cb7e Rename ac_timer_* interfaces -> timer_*. The ac_ is
meaningless and unnecessary.

Rename rem_timer -> stop_timer.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-12 23:39:14 +01:00
kaf24@firebug.cl.cam.ac.uk 4207635014 Simplify vcpu_sleep_sync() and sched_adjdom(). Their
interaction with the scheduler locks was unnecessarily
complicated.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-12 23:25:02 +01:00
kaf24@firebug.cl.cam.ac.uk 9b7916cc5e Fix compile warning about uninitialised vars.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-12 21:48:51 +01:00
kaf24@firebug.cl.cam.ac.uk 9baabcabfe Update copyright on domain_page implementation. It's been
rewritten from scratch a couple of times now and it's safe
to assert that the original Linux heritage was deleted
long ago.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-12 16:10:12 +01:00
kaf24@firebug.cl.cam.ac.uk b1f0161822 More debug print cleanups.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-12 15:59:45 +01:00
kaf24@firebug.cl.cam.ac.uk 8a0da1c334 Quieten debug printing on memory_op hypercall. Don't warn
about disallowed multipage allocation attempts.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-12 15:44:44 +01:00
kaf24@firebug.cl.cam.ac.uk 6f7a043a6a Re-enable per-cpu cache on map_domain_page(). Fix the
offending caller that broke the vcpu cache (writable
pagetable code kept a mapping outstanding until flush,
which could occur on a different vcpu).

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-12 15:43:22 +01:00
kaf24@firebug.cl.cam.ac.uk 6889a045da fixes some compiler warnings due to new types used in
the xenbus.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-01-12 14:27:55 +01:00
kaf24@firebug.cl.cam.ac.uk 71e8ec899a Adds a check to vtpm_manager and vtpm Makefiles to verify openssl and
gmp dev files are installed. If files are missing, Makefile exits with a
message indicating that these tools will not be built, rather than an
error, which prevents Xen from building.

Signed-off-by: Vinnie Scarlata <vincent.r.scarlata@intel.com>
2006-01-12 14:27:20 +01:00
emellor@leeni.uk.xensource.com b85612442b Merged. 2006-01-12 13:20:04 +01:00
emellor@leeni.uk.xensource.com c6aed7c358 8604:a51fcb5de470 introduced a discrepancy between the declaration
and definition of xc_linux_save(). In particular the argument for
the suspend pointer to function was null in one and int in the other.
On inspection, int seemed to be correct, so I went with this.
I also fixed up a few other cosmetic discrepancies.

Signed-Off-By: Horms <horms@verge.net.au>
2006-01-12 13:13:34 +01:00
kaf24@firebug.cl.cam.ac.uk 8f2651280a Fix cpu_affinity memcpy() (bytes not longs!) add add a better
affinity map sanity check to avoid blowing up Xen if no
online cpu is included in the map.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-12 12:45:49 +01:00
Ian.Campbell@xensource.com 2c5ceaba04 Fix x86_64 domU build by conditionalizing NMI support on CONFIG_X86_LOCAL_APIC
The NMI handler is not built unless CONFIG_X86_LOCAL_APIC is defined, and 
CONFIG_X86_LOCAL_APIC requires a dom0 build.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-12 10:37:10 +00:00
kaf24@firebug.cl.cam.ac.uk 8a790edb70 More do_iret() fixes. We need to take care in restoring
EFLAGS that we do not pull in non-zero IOPL, then crash
the domain, and then bug out when dom0 gets vcpu context.
This could otherwise be triggered by a malicious guest.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-11 20:14:27 +01:00
kaf24@firebug.cl.cam.ac.uk 5ccd14f4cc map_domain_page per-vcpu cache still seems broken. Disable
while I fix it.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-11 20:03:53 +01:00
kaf24@firebug.cl.cam.ac.uk ab8eb5a3ef More code cleanups, mainly to do_iret() implementations.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-11 19:44:54 +01:00
kaf24@firebug.cl.cam.ac.uk a5f2116f79 merge 2006-01-11 19:26:03 +01:00
kaf24@firebug.cl.cam.ac.uk a7813c4bba Reassert nmi pending when a nmi handler is registered
if we lost a previous nmi.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-11 19:24:43 +01:00
Ian.Campbell@xensource.com 18f32f1ff6 merge 2006-01-11 18:23:34 +00:00
Ian.Campbell@xensource.com 82862b4cce merge 2006-01-11 18:22:24 +00:00
kaf24@firebug.cl.cam.ac.uk d02b79422b Add a per-vcpu lock-free cache of mappings to map_domain_page.
Improve mapping slot search by using a free bitmap.
Removed map_domain_pages (multi-page mapping functionality).
Noone uses it, nor should they use it in future,

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-11 19:18:21 +01:00
Ian.Campbell@xensource.com 046536e8ee Fixup some bogus formatting and remove a stray debug printk
Signed-off-by: Ian Campbell <Ian.Campbell@xensource.com>
2006-01-11 17:50:05 +00:00
Ian.Campbell@xensource.com 4e844e3d27 merge 2006-01-11 16:26:04 +00:00
emellor@leeni.uk.xensource.com a72cda2a94 Install in /usr/sbin, not /usr/local/sbin, for consistency with the rest of the
Xen distribution.  Closes bug #462.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-01-11 16:23:16 +00:00
Ian.Campbell@xensource.com 544a856af5 Pass NMIs to DOM0 via a dedicated callback, Xen/Linux x86_64 support.
Register our NMI handler with Xen. Do an iret via the hypervisor
whenever the return CS is > RING0.

Add include/asm-xen/asm-x86_64/nmi.h as a Xen modified copy of
include/asm-x86_64/nmi.h in order that we can implement
get_nmi_reason() in a manner suitable for Xen.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-11 15:53:59 +00:00
Ian.Campbell@xensource.com 716d68d4c2 Pass NMIs to DOM0 via a dedicated callback, Xen/Linux i386 support.
Register our NMI handler with Xen. Use a pseudo-flag in EFLAGS in
indicate that we should return from the NMI via a hypervisor iret.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-11 15:52:54 +00:00
Ian.Campbell@xensource.com dfafd0de0c Pass NMIs to DOM0 via a dedicated callback, Xen x86_64 support.
Handle NMI interrupts and dispatch to dom0 on x86_64.

Renames the switch_to_user hypercall to iret. Extend the semantics to
include returns to guest/kernel if CS indicates ring 1. Retain the old
semantics of returning to guest/user if CS indicates ring3.

Plumb in nmi_op hypercall to generic code.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-11 15:52:33 +00:00
Ian.Campbell@xensource.com f483c99420 Pass NMIs to DOM0 via a dedicated callback, Xen x86_32 support.
Handle NMI interrupts and dispatch to dom0 on x86_32.

Renames the switch_vm86 hypercall to iret and implements full iret
semantics instead only what is required by VM86 returns.

Plumb in nmi_op hypercall to generic code.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-11 15:52:12 +00:00
Ian.Campbell@xensource.com f071016a5c Pass NMIs to DOM0 via a dedicated callback, core Xen support.
This patch adds core and generic x86 support code to enable Xen to
pass NMI's to a dedicated NMI callback in DOM0 instead of raising a
VIRQ.

Introduces the nmi_op hypercall to allow DOM0 to (un)register the NMI
handler.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-11 15:51:56 +00:00
Ian.Campbell@xensource.com 1582d11750 Factor re-enabling the IOCK line out of io_check_error()
and into a machine specific function to.

Signed-off-by: Ian Campbell <Ian.Campbell@XenSource.com>
2006-01-11 15:51:18 +00:00
vhanquez@kneesa.uk.xensource.com 6bc154ed1e make xs_test in xenstore compile.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-11 12:02:54 +00:00
vhanquez@kneesa.uk.xensource.com d9014bb4aa update xs_transaction_t to be a plain u32 integer instead of a fake pointer.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-11 12:01:37 +00:00
vhanquez@kneesa.uk.xensource.com 53ed6896f3 Share the same name for xenbus transaction type between user and kernel
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-11 11:46:32 +00:00
kaf24@firebug.cl.cam.ac.uk f2a491843d Fix 32-bit shadow mode to handle extended perdomain mapping
area now that mapcache is per domain.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-11 11:34:05 +01:00
kaf24@firebug.cl.cam.ac.uk 824e2dc244 Fixed ia64 compilation issues and also change xen/ia64 to use one single,
multi-cpu, idle domain created dynamically correspondingly. Only
difference is vcpu0 of idle domain is still built at compilation phase,
due to some code copied from Linux requiring that.

Signed-off-by Kevin Tian <Kevin.tian@intel.com>
2006-01-11 11:09:17 +01:00
kaf24@firebug.cl.cam.ac.uk 8aa806e0b1 Update map_domain_page() documentation (mappings may only be
be used within the mapping vcpu). Implement TLB flush
filtering on the per-domain mapcache.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-10 18:53:44 +01:00
kaf24@firebug.cl.cam.ac.uk af58611df6 Add new map_domain_page_global() interface to allow mappings
that are accessible in all contexts and address spaces.
Used by shadow code and vmx code.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-10 18:25:45 +01:00
vhanquez@kneesa.uk.xensource.com ec5303c071 Change xenbus_transaction fake pointer into an opaque type.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-10 17:16:30 +00:00
cl349@firebug.cl.cam.ac.uk e2fa4bde2c Cleanups.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-01-10 17:27:16 +01:00
vhanquez@kneesa.uk.xensource.com e92fb45b06 Replace NULL xenbus transaction by a specific XBT_NULL value.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-01-10 15:05:05 +00:00
kaf24@firebug.cl.cam.ac.uk 86bf018541 Send guest output on all xen-attached console devices
(i.e., on vga console as well as serial console, if dom0
didn't take over the vga console).

Signed-off-by: Jan Beulich <JBeulich@novell.com>
2006-01-10 16:00:37 +01:00
kaf24@firebug.cl.cam.ac.uk 361fad2231 Fix the build.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-10 15:53:39 +01:00
stekloff@elm3b216.beaverton.ibm.com 18fd51ae21 Updated default config options for VMX test domains in xm-test, got rid of
nics option and added acpi and apic.

Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
2006-01-10 14:44:36 +00:00
stekloff@elm3b216.beaverton.ibm.com 22185f6ec9 Changed ifconfig loopback to have 127.0.0.1, so ping will work.
Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
2006-01-10 14:44:31 +00:00
emellor@leeni.uk.xensource.com 28f970eb40 Merged. 2006-01-10 14:38:22 +00:00
emellor@leeni.uk.xensource.com 52e91db180 Proactively check for NULL strings passed into xc_linux_build. Either DTRT
or return error if detected.  A NULL cmdline, for example, would currently
generate a segfault.

Signed-off-by: Ben Thomas  <bjthomas3@gmail.com>
2006-01-10 14:37:25 +00:00
kaf24@firebug.cl.cam.ac.uk 025fd2d09a Add VMX guest quick start into Xen 3.0 user manual.
Signed-off-by: Yongkang You <yongkang.you@intel.com>
Signed-off-by: Alan C. Oehler <alan@xensource.com>
Signed-off-by: John L Villalovos <john.l.villalovos@intel.com>
Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
2006-01-10 15:33:28 +01:00
emellor@leeni.uk.xensource.com d8efb64a3a Made network-bridge script work on ALL systems missing ifup/down.
This is done by defining ifup/down both to 'false' when they're
missing; then instead of attempting to parse the IP params from
the kernel command line, we get them from 'ip' instead.  So this
works even with (for example) ip=dhcp on the kernel command line.

Also made a few minor syntax changes (in particular, replaced "=="
with "=", and ">&foo" with ">foo 2>foo") so this works with more
limited shells.

Signed-off-by: Ben Thomas <bjthomas3@gmail.com>
2006-01-10 14:33:00 +00:00
kaf24@firebug.cl.cam.ac.uk 57ad8645a9 Proactively check for NULL strings passed into xc_linx_build. Either do
the right thing or return error if detected.  A NULL cmdline, for example,
would currently generate a segfault.

Signed-off-by: Ben Thomas <bjthomas3@gmail.com>
2006-01-10 15:28:41 +01:00
kaf24@firebug.cl.cam.ac.uk 116bf770dc Add dummy 'all' target to guest-headers Makefile.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-01-10 15:26:57 +01:00