Commit Graph
10479 Commits
Author SHA1 Message Date
kaf24@firebug.cl.cam.ac.uk df3f613e31 [VMX] Fix use of VMCLEAR a little: no need if not active on any CPU.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-22 15:25:18 +01:00
kaf24@firebug.cl.cam.ac.uk 66091ed16b [TOOLS] Make sure to explicitly close the connection if we're using HTTP/1.0. This
shouldn't be needed but it appears to be necessary as the Python client
just does a wfile.read() instead of only reading the reported Content-Length.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2006-06-22 15:10:48 +01:00
kaf24@firebug.cl.cam.ac.uk 74a08f001b [TOOLS] Treat '--' command-line split option correctly.
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2006-06-22 15:09:48 +01:00
kaf24@firebug.cl.cam.ac.uk c772fee485 [TOOLS] Fix pagetable-pinning loop in xc_linux_restore.
Previously it would not pin last PFN in physmap even if it was
a pagetable page.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-22 14:12:01 +01:00
kaf24@firebug.cl.cam.ac.uk 42fae7ae02 [XEN] localtime support for paravirtualized guests
It is quite minimal
in its approach, satisfying the purposes of the paravirtualized
NetWare operating system as well as any others that expect the time
base to be provided in localtime.

Signed-off-by: Bruce Rogers <brogers@novell.com>
2006-06-21 17:09:14 +01:00
kaf24@firebug.cl.cam.ac.uk 060b6f6d38 [LINUX][TPM] Use min_t/min instead of the #define'd MIN.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-06-21 16:55:25 +01:00
kaf24@firebug.cl.cam.ac.uk 9fb9651ac5 [LINUX] Transparent virtualization fixes.
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-06-21 16:54:09 +01:00
kaf24@firebug.cl.cam.ac.uk 0cbf97ac5c [IA64] stub to support dump_execution_state() on ia64
Also implement on_selected_cpus() for ia64.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-06-21 10:56:20 +01:00
kaf24@firebug.cl.cam.ac.uk 295173e3ca [XEN] Xen always relinquishes VGA console to domain0 when domain0
starts to boot (previous behaviour looked for console=tty0 on
dom0's command line). To prevent this 'console=vga[keep]' must
be specified.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-20 18:51:46 +01:00
kaf24@firebug.cl.cam.ac.uk e72c35d964 [XEN] Fix to previous changeset: continue to do softirq while delaying.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-20 18:28:41 +01:00
kaf24@firebug.cl.cam.ac.uk 0cd98ba464 [XEN] Add a warning banner when 'sync_console' is used. Make it
very obvious and mildly annoying.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-20 18:19:07 +01:00
kaf24@firebug.cl.cam.ac.uk da6d8860b0 [XEN] Fix PAE PDPT shadowing coherence.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-20 17:04:13 +01:00
kfraser@dhcp93.uk.xensource.com 19c8828f4b Add new XENMEM_machphys_mapping to get info about location and
sizeof of the mach2phys table default mapping. Use this in Linux to
dynamically adapt the mfn_to_pfn() routine to undelrying hypervisor.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-20 14:45:46 +01:00
kfraser@dhcp93.uk.xensource.com 0f296e1985 [LINUX] Another fix to i386 mfn_to_pfn().
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-20 13:45:23 +01:00
kfraser@dhcp93.uk.xensource.com 2a2bc9fabb [LINUX] Fix i386 build -- define max_mapnr in mfn_to_pfn().
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-20 13:42:08 +01:00
emellor@leeni.uk.xensource.com 522884b8be Move the SSHTransport class to its own file, so that we may disable SSH
transport when running on Python <2.4.  SSHTransport uses the new subprocess
class, and so it doesn't work on older versions.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-06-20 13:32:21 +01:00
ack@localhost.localdomain 47966cbaaa Merge 2006-06-20 12:12:44 +01:00
ack@localhost.localdomain 906ea7220e Run credit scheduler tests by default
Signed-off-by: Emmanuel Ackaouy <ack@xensource.com>
2006-06-20 12:11:28 +01:00
kfraser@dhcp93.uk.xensource.com 5363eb610a Export machine_to_phys start and end addresses to guests.
Use this info in Linux to bounds-check accesses to the
m2p table.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-20 12:01:09 +01:00
shand@kneesaa.uk.xensource.com 5cbaa75a91 Make the credit scheduler the default - a number of bugs have been fixed
(thanks to all for testing!) and now seems ready for more widespread usage. 

Signed-off-by: Steven Hand <steven@xensource.com>
2006-06-20 11:04:58 +01:00
shand@kneesaa.uk.xensource.com e055d02fde Remove some spurious BUG_ON()'s from the credit scheduler.
Signed-off-by: Steven Hand <steven@xensource.com>
2006-06-20 11:02:49 +01:00
anthony@rhesis.austin.ibm.com 22737f2517 Use an environmental variable (XM_SERVER) to determine XML-RPC URI.
This allows users to invoke xm against a remote server.  This is much more
useful though for exercising XML-RPC transports with xm-test though since
xm-test will continue to (mostly) function if the URI is localhost.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2006-06-20 10:25:22 +01:00
root@rhesis.austin.ibm.com 321c94c756 This patch adds client side support for XML-RPC over ssh. It differs from
the previous submission in that it now uses lazy evaluation to connect
to the remote server and provides more user friendly error messages if ssh
is not available.

Signed-off-by: Anthony Liguori
2006-06-20 10:25:21 +01:00
anthony@rhesis.austin.ibm.com bb62154f4b Add an xm serve command.
This command proxies the Xend XML-RPC over stdio.  This is similiar to
mercurial's hg serve --stdio command.

The most obvious use of this command is remote XML-RPC invocation over SSH.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2006-06-20 10:25:20 +01:00
anthony@rhesis.austin.ibm.com b908c58770 Add support to Xend XML-RPC server for HTTP/1.1 Keep-Alive.
This patch fixes a few bugs in the Python SimpleXMLRPC server and enables
HTTP/1.1 by default.  This allows a client to use Keep-Alive.  Keep-Alive
improves performance by eliminating the overhead of connection setup and,
more importantly, avoids credential caching when executing multiple
commands over a secure connection.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2006-06-20 10:25:18 +01:00
kaf24@firebug.cl.cam.ac.uk 18ff1c9e42 [XM-TEST] Improve detection of a guest having booted to prompt.
Lots of xm-test tests are failing with console timeouts on some machines
at the moment.  I reproduced the problem and found it was due to some
probing activity in the boot process of the -xen kernel.  The behaviour
of the current xm-test code is to assume that the boot process has
finished after performing three one-second waits for input---when the
probing activity introduces more than three one-second delays the test
suite breaks.

This patch changes the test suite to wait for the command prompt
before attempting to submit a command.  The timeout is increased from 3
seconds to 3 minutes but the wait exits early when the prompt is found
so the test suite doesn't take any longer to run.

Signed-off-by: Harry Butterworth <butterwo@uk.ibm.com>
2006-06-19 17:43:04 +01:00
kfraser@dhcp93.uk.xensource.com 7af0cf8927 [XEN][PAE] Always enable non-debug version of l3tab_needs_shadow()
as there is some suspicion that it leads to crashes on PAE hosts.
Also: improve bracketing in the macros, for safety.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-19 17:26:54 +01:00
kaf24@firebug.cl.cam.ac.uk a4f314d743 [HVM][VMX][PAE] Enable PAE VMX guest on PAE host.
The PAE VMX guest supports NX bit and can do kernel build successfully.

Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
Signed-off-by: Xiaohui Xin <xiaohui.xin@intel.com>
2006-06-19 16:47:21 +01:00
kaf24@firebug.cl.cam.ac.uk 2be827a773 Add DOM0_DOMAIN_SETUP hypercall.
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
[I fiddled with the flags prefix after all. :-)
 Signed-off-by: Keir Fraser <keir@xensource.com>]
2006-06-19 16:39:27 +01:00
kfraser@dhcp93.uk.xensource.com 69973f3753 [XEN][PAE] Stores to PTEs in PAE mode use CMPXCHG to ensure atomicity.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-19 14:44:34 +01:00
kfraser@dhcp93.uk.xensource.com d3adaa9127 [XEN][PAE] Handle non-page-aligned CR3 when walking
page tables.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-19 14:03:04 +01:00
kfraser@dhcp93.uk.xensource.com aba1f12c14 [XEN] New function dump_execution_state() displays
current register and stack state of local CPU.
Use this to extend the 'd' debug key to be more useful.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-19 13:06:10 +01:00
kfraser@dhcp93.uk.xensource.com 02e433d846 [XEN] Rename show_registers() to show_execution_state().
This makes more sense since it dumps stack as well as
registers. show_registers() still exists; it simply doesn't
dump the stack any more.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-19 11:44:25 +01:00
kfraser@dhcp93.uk.xensource.com 8a6db74322 [XEN] Improve double-fault tracing -- print backtrace
on stack overflow.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-19 11:21:40 +01:00
kfraser@dhcp93.uk.xensource.com 5445814f56 [XEN] Fix non-debug builds.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-19 11:10:10 +01:00
kfraser@dhcp93.uk.xensource.com 3be130f839 [XEN] Fix ptwr_do_page_fault() after new more permissive
entry conditions to that function. Now that we no longer
check PGERR_page_present (i.e., that fault is a protection
fault), because it's not safe to do so, we can enter
ptwr_do_page_fault() with a not-present L2 page directory.
We then crash on our first access to the linear_l2_table.
This patch fixes all unprotected accesses to the
linear_l2_table to correctly handle faults.

Also move setup of globally-visible ptwr info record to end
of ptwr_do_page_fault(). We don't want the info picked up
by reentrant invocations of the page-fault handler.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-19 10:18:39 +01:00
kaf24@firebug.cl.cam.ac.uk f01a089de1 [XEN] Remove code from writable-pagetable emulation path which
does not appear to be necessary. Replace with assertions for now,
pending total removal or me being proved wrong.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-18 19:49:31 +01:00
kaf24@firebug.cl.cam.ac.uk 7b3cc673ac [XEN] Multi-processor guests need to be more conservative when
doing batched writable-pagetable work.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-18 19:44:13 +01:00
kaf24@firebug.cl.cam.ac.uk fa89a5905e [XEN] Fix page-fault handler to not trust bit 0 of error code.
It can be cleared due to writable-pagetable logic. Various
other cleanups too. Spurious fault detection logic is
simplified.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-18 19:24:00 +01:00
kaf24@firebug.cl.cam.ac.uk 9c8f5290ef Small fixes to changesets 10424 and 10425 (spurious #PF detection).
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-17 12:57:03 +01:00
kaf24@firebug.cl.cam.ac.uk 1d13b43fea [SEDF] Fix SEDF defaults to make domain0 take only a fair
equally-weighted share of extratime. Also, hack the short-
blocking logic as otherwise domain0 steals all CPU time 
for several seconds after waking from a long sleep.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-17 11:29:35 +01:00
kaf24@firebug.cl.cam.ac.uk 9402c1936d [HVM] Clean up formatting of new piix acpi file.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-17 09:19:16 +01:00
kaf24@firebug.cl.cam.ac.uk 9c15ad745c [HVM] ACPI support patch 4 of 4: shutdown.
The patch is incorporated  from Ben's Virtual Iron's ACPI shutdown patch
in changeset 9989:f8d20c3e4225
The patch support guest ACPI Windows shutdown, as well as ACPI guest
Linux "halt -p" and "shutdown -h now".

Signed-off-by: Ben Thomas <ben@virtualiron.com>
Signed-off-by: Winston Wang <winston.l.wang@intel.com>
2006-06-17 09:08:14 +01:00
kaf24@firebug.cl.cam.ac.uk 801d469ad8 [HVM] ACPI support patch 3 of 4: ACPI _PRT table.
Adds ACPI _PRT table for PCI IRQ routing table in PIC mode
and fixes the _PRT table in APIC mode

Signed-off-by: Tang Liang <tangliang@lenovo.com>
Signed-off-by: Winston Wang <winston.l.wang@intel.com>
2006-06-17 09:06:46 +01:00
kaf24@firebug.cl.cam.ac.uk c45e9f7a4f [HVM] ACPI support patch 2 of 4: ACPI timer.
ACPI timer is required during guest windows installation and boot.

Signed-off-by: Tang Liang <tangliang@lenovo.com>
Signed-off-by: Winston Wang <winston.l.wang@intel.com>
2006-06-17 09:05:34 +01:00
kaf24@firebug.cl.cam.ac.uk f4cdf1dbe8 [HVM] ACPI support patch 1 of 4: main components.
The patch support ACPI UP Guest Windows 2000,  XP and 2003, based on
this we are going to add more support on SMP and 64bit Windows( which
are only working in ACPI mode) later. We tested: in ia32 guest:

  a. Installation and boot of  Windows XP sp2 and 2003 server in ACPI
mode
  b  when boot to both window, no yellow mark in device manger and  USB,
network card and IDE DMA are working.
  c. clean boot (without ACPI related errors) on UP and  4 vcpu rhel4u1
SMP guest and got ioapic Interrupt assigned according to ACPI DSDT
table's _PRT table's GSI.
  
To minimize the implementation efforts to satisfy the ACPI OS
installation and boot, we implemented  ACPI only event logical model by
emulating ACPI hardware based on PIIX4 (Intel 82371ab) by:  Populating
the PIIX4  ACPI bridge PCI configuration space; Adding ACPI timer
(required during windows installation/boot), PM1 event register block
and PM1 control register block (both are required during
installation/boot, shutdown, entering and leaving PM S state if adding
those features later), we provided full ACPI hardware registers above
using byte/word/dword access per ACPI spec requirement.

The patch also fixed many existing hvm ACPI related bugs, such as
warnings when boot to ACPI  UP and SMP guest Linux OS; adding new ACPI
_PRT table reporting PCI IRQ routing table in PIC mode,  adding new _PRT
table in APIC mode, that fixed no IRQ GSI cause it is forced to shutdown
when OS find new device to assign IRQ without ACPI event service; The
patch also fixed the ACPI DSDT table's  PCI resource conflict with guest
e820 table when booting and installing ACPI Windows; we also added ACPI
shutdown service by incorporating the code in ACPI "hardware enable
register writer" from  Ben's Virtual Iron's team's patch in changeset
9989:f8d20c3e4225.

We only provide minimum power management requirement support per spec-c1
and S5 for shutdown, may be S4 (hibernating which is meaningful for user
to save their working section)  in the future.

Please note, current patch needs to  have following switches in guest
configuration to enable proper ACPI support
  a. need to add ACPI=1 (apic=1 if boot SMP Linux guest plus vcpu=
number want to test) in xmexample.hvm
  b. need to add USB support: USB=1 and usbdevice='device' (or
='tablet') as the pm register base is static..., I will adding dynamic
ACPI FADT table for pm register base pointer later.

When installing guest OS in ACPI mode, need to manually tell Windows
setup program to install single core ACPI HAL:
   After passing the 1st screen of windows setup of install Windows,
   the first thing you'll see at the bottom of the screen is the
   option to press F6 if you need to install a SCSI or RAID
   controller. Don't press F6. Press F5 instead. This will take
   you to a separate menu of Hardware Abstraction Layer's where
   you can choose an appropriate HAL .The choices will be:
  
   ACPI Multiprocessor PC
   ACPI Uniprocessor PC
   Advanced Configuration and Power Interface (ACPI) PC
   ...
   Standard PC
   Standard PC with C-Step i486
  
Please select "Advanced Configuration and Power Interface (ACPI) PC"
using current patch.

Signed-off-by: Winston Wang <winston.l.wang@intel.com>
2006-06-17 09:00:16 +01:00
kaf24@firebug.cl.cam.ac.uk d994f81846 [LINUX] Fix dependencies on CONFIG_PROC_FS.
Signed-off-by: Horms <horms@verge.net.au>
2006-06-17 08:56:02 +01:00
kaf24@firebug.cl.cam.ac.uk e22b1a8b80 [LINUX] Kernel should not send out IPv6 autoconfig multicast
packets if the interface is not marked as multicast-capable.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-06-17 08:42:31 +01:00
kaf24@firebug.cl.cam.ac.uk ac85f84b53 [TOOLS] Clean up the network setup scripts. Create some
setup functions and use them everywhere.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-06-17 08:40:50 +01:00
kaf24@firebug.cl.cam.ac.uk ffa0b25d43 [ACM] Complete the conversion of acm_ops using Xen handles instead
of void pointers. It also fixes a recently slipped in acm bug that hangs 
Xen when a domain is destroyed.

Signed-off by: Reiner Sailer <sailer@us.ibm.com>
2006-06-17 08:38:35 +01:00