Commit Graph
9472 Commits
Author SHA1 Message Date
emellor@leeni.uk.xensource.com f61bc4e0b8 Merged. 2006-03-29 18:41:30 +01:00
smh22@firebug.cl.cam.ac.uk f9bdf89a1b Fix save/restore on 64-bit.
Signed-off-by: Steven Hand <steven@xensource.com>
2006-03-29 18:07:36 +01:00
smh22@firebug.cl.cam.ac.uk 473e020902 Fix save/restore bug; further rationalization of xenbus state machine
logic deferred until post 3.0.2.

Signed-off-by: Steven Hand <steven@xensource.com>
2006-03-29 18:06:27 +01:00
cl349@firebug.cl.cam.ac.uk 4df87c91b1 Free shadows of any pages which are released by a domain back to Xen.
This should fix the "Assertion '! IS_INVALID_M2P_ENTRY(gpfn)'"-crash in
free_shadow_page on domain destruction.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-03-29 16:50:59 +01:00
cl349@firebug.cl.cam.ac.uk a10d8554f8 Re-arrange code for followup patch and remove extra shadow_lock in function which is only called with the lock already held.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-03-29 16:47:46 +01:00
kaf24@firebug.cl.cam.ac.uk 816b45f1c4 Compute actual baud rate from UART divisor latch contents
when no baud rate is specified. Generalise the divisor
calculation based on external clock rate.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-29 16:02:40 +01:00
kaf24@firebug.cl.cam.ac.uk 0f60ff7a3b Ensure curr_vcpu in domain.c is set correctly, even when
nr physical cpus is greater than max virtual cpus per domain.

Also do not initialise secondary CPU smp_processor_id() from
smpboot.c cpucount. It will be wrong if some CPUs fail to boot.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-29 15:39:22 +01:00
kaf24@firebug.cl.cam.ac.uk 54336cd685 Make maximum number of supported physical CPUs a compile-time
option via the 'max_phys_cpus=<nr>' compilation parameter.

Based on a patch from Aravindh Puthiyaparambil at Unisys.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-29 14:54:43 +01:00
anthony@rhesis.austin.ibm.com bf95282732 Remove vcpu_avail from the public S-Expression that's passed over the wire.
This trips up the XML-RPC layer on large SMP systems and isn't actually used
by xm.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2006-03-29 14:50:57 +01:00
kaf24@firebug.cl.cam.ac.uk fd24f14fe4 SVM patch to update guest time with latest hvm modifications.
Signed-off-by: Tom Woller <thomas.woller@amd.com>
2006-03-29 13:56:26 +01:00
kaf24@firebug.cl.cam.ac.uk 111ce84369 Some fixes to IRET hypercall and failsafe callback handlers:
1. IRET hypercall must restore the event callback mask. This
    was missing on x86/64, and both subarchitectures now restore
    from EFLAGS.IF.
 2. Failsafe callbacks are fixed to detect whether fault is due to
    bad segment or due to IRET. In the latter case we now
    immediatiately kill the process. This avoids infinite looping
    between IRET hypercall and failsafe callback handler in the guest.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-29 12:02:45 +01:00
cl349@firebug.cl.cam.ac.uk f73e4555d6 Initialise p2m entries to INVALID_MFN and disable debug printk in pfn to mfn lookup.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-03-29 10:46:36 +01:00
kaf24@firebug.cl.cam.ac.uk 57f82067cf Fix get_page_type() when passed PGT_va_mutable.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-28 21:21:26 +01:00
kaf24@firebug.cl.cam.ac.uk fd8719a931 Clean up and fix VCPU hotplug and SMP save/restore.
1. No longer hold xenbus_lock while taking down VCPUs
    in SMP suspend path. This allows block device hotplug
    to continue working and so we will not deadlock on
    paging in userspace hotplug code.
 2. Track xenbus and local-admin permitted cpumasks for 
    VCPUs to bring online. So, if a local admin takes a
    CPU down, that won't surprisingly get overridden next
    time the kernel interrogates xenstore.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-28 18:43:30 +01:00
cl349@firebug.cl.cam.ac.uk ee35c5fbf6 Change do_IRQ high bit masking.
Allow more than 256 interrupt vectors on native by only setting the
highest bit when marking orig_eax to indicate that we're not within
a system call.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-03-28 14:19:22 +01:00
kaf24@firebug.cl.cam.ac.uk 52c437a6da The introduction of the SMI handling code added in cset 9371 is
"reversed", as in it actually clears the SMI bit in the VMCB. If you
have a new enough chip (or new BIOS), the SMI bit HAS TO BE SET or it
gives exitcode -1. 

Signed-off-by: Mats Petersson <mats.petersson@amd.com>
2006-03-28 13:45:08 +01:00
kaf24@firebug.cl.cam.ac.uk 6deec31297 merge 2006-03-28 13:43:22 +01:00
kaf24@firebug.cl.cam.ac.uk 77cf652765 Add missing -xen ia64 config file.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-28 13:42:28 +01:00
kaf24@firebug.cl.cam.ac.uk 91b2f8b8b2 SVM only patch to fix location of PIO request RIP update.
Fixes booting of win2003 server, and various CD installation failures.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
2006-03-28 13:40:30 +01:00
emellor@leeni.uk.xensource.com 81094db8cb Merged. 2006-03-28 11:52:47 +01:00
emellor@leeni.uk.xensource.com 158e559443 Mention uClibc and buildroot configs.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-28 11:51:06 +01:00
emellor@leeni.uk.xensource.com 472238a5e2 Added README for the XenSource-hosted initrd.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-28 11:47:58 +01:00
emellor@leeni.uk.xensource.com 394bbf04f5 Download the initrd from xm-test.xensource.com, unless otherwise specified.
Don't download it again if it's already present.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-28 11:47:20 +01:00
emellor@leeni.uk.xensource.com 5be19e898d Watch for @introduceDomain, for symmetry with the existing watch on
@releaseDomain.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-28 11:26:29 +01:00
emellor@leeni.uk.xensource.com d4a55b4a44 Have TCPXMLRPCServer inherit from SocketServer.ThreadingMixIn. This allows
Xend to handle more than one request simultaneously once again.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-28 11:25:22 +01:00
cl349@firebug.cl.cam.ac.uk e8e51446b5 Remove special handling of {set,clear}_in_cr4().
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-03-28 10:09:44 +01:00
kaf24@firebug.cl.cam.ac.uk 80605be3af Simplify the failsafe callback handler in x86/64 linux. It doesn't
need to try reloading segment selectors (unlike i386 linux).

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-28 10:01:35 +01:00
kaf24@firebug.cl.cam.ac.uk 9dd08d8ffb Add -xen buildconfig for ia64 and tweak CONFIG_VT setup to avoid
initializing on domUs.  Remove CONFIG_IDE_GENERIC as this is
unnecessary on ia64 systems (no ISA IDE controllers) and causes long
timeouts booting domU.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-03-28 09:57:48 +01:00
kaf24@firebug.cl.cam.ac.uk 638f779fc5 Make -xen default kernel compile on x86_64 by removing b44 module.
This patch ends up affecting a couple other lines because it is the
result of a new make menuconfig, but those changes should be harmless.

Signed-off-by: Sean Dague <japh@us.ibm.com>
2006-03-27 18:03:03 +01:00
cl349@firebug.cl.cam.ac.uk 044cc18bf5 Whitespace.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-03-27 11:16:36 +01:00
kaf24@firebug.cl.cam.ac.uk 3ad72f8da8 Fix 64-bit HVM guest debug via gdbserver:
1. gdb_regs for 64bit, and macros to transfer regisers between ptrace
    registers to gdb registers
 2. xc_ptrace code building for 64bit
 3. Implementation of new map_domain_va for 64bit
 4. gdbserver-xen build configuration fixes for 64bit

From: Nitin Kamble
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-26 11:50:39 +01:00
kaf24@firebug.cl.cam.ac.uk f3a1bad634 Allow 64-bit Xen to run 64-bit hvm SMP guests.
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
2006-03-26 11:45:35 +01:00
kaf24@firebug.cl.cam.ac.uk 2e0416c354 Don't reclaim vcpus that are not put into use yet when destroying HVM
domain. Otherwise, when running a debug=y xen, we will get a assertion
failure in vmx_request_clear_vmcs(), since some vcpus may be not
initialized for HVM use yet.

Signed-off-by: Xin Li <xin.b.li@intel.com>
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
2006-03-26 11:43:53 +01:00
kaf24@firebug.cl.cam.ac.uk 3df5f295f8 Fix build error with debug=y inxen/ia64 by moving
MAX_ORDER definition has moved into a header file. 

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2006-03-26 11:42:17 +01:00
kaf24@firebug.cl.cam.ac.uk ac58fadfa5 The attached patch to the qemu emulation of the pcnet hardware fixes
several problems.  It will now only read and write a transmit or receive
descriptor once.  It will correctly handle transmitting frames with more
than two fragments.  It will discard oversize frames instead of
corrupting memory.  I have tested all the changes I have made and even
seen an improvement in receive performance from 1.7MB/s to 3.3MB/s.
Your mileage will vary.

The code could be simplified if multi-fragment frames were deleted.  It
appears that both Linux and Windows XP don't use fragmented frames.

The mac crc computation code was deleted, since it has never been used.
The code was checking the wrong bit in the control register.

I tested type 3 descriptors by modifying the linux pcnet32 driver, but
did not see any difference in performance over type 2 currently used.

I have not made any change to type 0 (16-bit) transmit/receive
descriptors as I have no way to test the changes.

Please test this as soon as possible, as I will be on vacation next week
and in a class the following week.  I will check email from time to
time, but my ability to make changes to code will be greatly dimished.

One other thing I noticed in my testing, is that if I tell a linux domU
to reboot, it will reboot but not have any pcnet32 device after
rebooting.  By doing a shutdown, xm destroy and xm create, I was able to
get around that problem.

Signed-off-by:  Don Fry <brazilnut@us.ibm.com>
2006-03-26 11:39:04 +01:00
kaf24@firebug.cl.cam.ac.uk 9c6543d4af Add format printf attribute to panic() prototype and fix the error
this catches.

Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-26 11:35:11 +01:00
kaf24@firebug.cl.cam.ac.uk 4d2384d456 Added tag 3.0.2-rc for changeset af0573e9e5258db0a9d28aa954dd302ddd2c2d23 2006-03-24 17:48:03 +01:00
emellor@leeni.uk.xensource.com b0ceb872c7 Switch the default build to make the -xen kernel, not the -xen0 and -xenU
kernels.  Distros will be using -xen exclusively, so this change means that
developers and users of unstable will be (by default) using the same
configuration as the distros.

This can be overridden by setting KERNELS="linux-2.6-xen0 linux-2.6-xenU" on the
command line.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
3.0.2-rc
2006-03-24 14:36:14 +01:00
harry@localhost.localdomain 5ebad7be89 Fix bug 515 by adding a global lock around the hotplug scripts in the non-udev hotplug case only.
There are two possible root causes for 515, both of which are only problems in the non-udev hotplug case because udev uses udevsend which already implements the required serialisation.

1) Script concurrency.
2) Kernel reordering hotplug events.

This changeset fixes (1) but not (2).  Since (1) is the problem that seems to be happening this is probably OK.

A fix for (2) for the hotplug case might be to add extra serialisation using state changes in the store but this would impact all the drivers and the code and extra complexity would be redundant once everyone had moved to udev.  This doesn't seem worthwhile unless we actually start to see (2) happening.
2006-03-24 14:31:20 +01:00
anthony@rhesis.austin.ibm.com 76e09e8238 1) Introduce new exception type XendInvalidDomain that maps to the high level
XEND_INVALID_DOMAIN faultType.
2) Fix exception logic in XMLRPCServer
3) Fix TCP server
4) Remove catching of ProtocolError in main.py.  ProtocolErrors only occur
   when there is an exception in the exception handling code which shouldn't
   ever happen.  I've reproduced the error cases described by Ewan with
   xend_domain_setTargetMemory and once I fixed the exception logic, I get a
   normal faultType of 1 as would be expected.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2006-03-24 14:31:12 +01:00
kaf24@firebug.cl.cam.ac.uk 3e0dfe69c9 Create /var/xen/dump/ during tools installation, or core files
are not written even if we set (enable-dump yes) in xend-config.sxp.

Signed-off-by: Akio Takebe <takebe_akio@jp.fujitsu.com>
2006-03-24 12:28:58 +01:00
kaf24@firebug.cl.cam.ac.uk 1a8bbf93b8 Detect spurious faults taken in the hypervisor that are
due to writable pagetable logic.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-24 12:14:58 +01:00
kaf24@firebug.cl.cam.ac.uk 7e273af3ec This patch is mainly a cleanup of vmx related xentrace code. One minor
xentrace bug is fixed. 

Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com>
Signed-off-by: Yunfeng Zhao <yunfeng.zhao@intel.com>
2006-03-24 10:59:31 +01:00
kaf24@firebug.cl.cam.ac.uk 3095cdaf50 Update gdb documentation
* Kernel isn't 2.6.12 anymore
* ARCH=xen isn't needed for make anymore

Signed-Off-By: Horms <horms@verge.net.au>
2006-03-24 10:57:52 +01:00
kaf24@firebug.cl.cam.ac.uk 70f46c3045 The patch removes old Xenbus files, fixes 0 length mmu_updates table bug
(bugfix by Melvin Anderson) and adds missing console.h header file 
(again spotted by Melvin).

Signed-off-by: Grzegorz Milos <gm281@cam.ac.uk>
2006-03-24 10:52:10 +01:00
kaf24@firebug.cl.cam.ac.uk c7b965a01c Fix mini-os xenbus.
From: Grzegorz Milos <gm281@cam.ac.uk>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-24 10:47:48 +01:00
kaf24@firebug.cl.cam.ac.uk 2acf021310 Remove unnecessary zlib includes.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
2006-03-23 18:57:21 +01:00
kaf24@firebug.cl.cam.ac.uk fe6ed1ce99 on_selected_cpus() must not send IPIs with empty target masks.
This causes send accept errors on Pentium/P6 .

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-23 18:47:43 +01:00
emellor@leeni.uk.xensource.com 22f9491cad Merged. 2006-03-23 17:37:37 +01:00
emellor@leeni.uk.xensource.com 0e84746cfd Remove undefined XFAIL_TESTS variable.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-23 17:27:48 +01:00