Commit Graph
9988 Commits
Author SHA1 Message Date
kaf24@firebug.cl.cam.ac.uk 6ca3eb3308 Fix an out-of-bounds memory access in xc_ptrace.c.
Currently, Xen always copies the entire 512 byte extended
FPU state (fxsave) even if only the "regular" FPU state was
requested.

This breaks since the memory buffer allocated in
linux-xen-low.c:regsets_fetch_inferior_registers() is only large
enough to hold the "plain" FPU registers.

Signed-Off-By: Simon Kagstrom <simon.kagstrom@bth.se>
2006-05-12 15:47:25 +01:00
kaf24@firebug.cl.cam.ac.uk 3e3fe8486d Re-enables ptrace for paravirtualized guests.
Changes:

- Added to_ma function which translates a physical address to a
  machine address for HVM guests and just returns the address for PV
  guests.

- Use to_ma() in map_domain_va_32, map_domain_va_pae and
  map_domain_va_64 to abstract away differences between HVM and PV
  guests.

- (From Keir, Ryan) Export CR0 to PV guests as well.

I've removed the address checks against 0 since the last version since
physical/machine address 0 should be valid. Invalid translations
should be catched in xc_map_foreign_domain.

Signed-Off-By: Simon Kagstrom <simon.kagstrom@bth.se>
2006-05-12 15:26:39 +01:00
kaf24@firebug.cl.cam.ac.uk 8d73a7e949 Update the readme for tools/examples/scripts.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-05-12 15:21:12 +01:00
kaf24@firebug.cl.cam.ac.uk 4550aad32d Fix xentrace to initialise the trace buffers if they are not set up.
Signed-off-by: Atsushi SAKAI <sakaia@jp.fujitsu.com>
2006-05-12 15:19:37 +01:00
kaf24@firebug.cl.cam.ac.uk 17af31bde6 Fix the cirrus vga model to not leak memory when switching between
initial vga mode and linear framebuffer.

When creating device model, the vga memory is allocated through
xc_domain_memory_increase_reservation(), however, when switch to use
linear framebuffer, we didn't free that memory, and re-allocate the vga
memory through set_mm_mapping(), that caused memory leak. Now it is
changed to just using qemu_malloc when create device model, and free
that memory when switch to linear framebuffer.

After unset_vram_mapping(), the old memory pointer should be
unmapped; after set_vram_mapping(), the old memory should be freed.

Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
2006-05-12 15:17:21 +01:00
kaf24@firebug.cl.cam.ac.uk 4b769f4b61 Move set/unset_vram_mapping into cirrus_vga.c, pending a fixup patch.
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
2006-05-12 15:15:59 +01:00
cl349@firebug.cl.cam.ac.uk 8cc76e4aee Fix network bridge script to select the right interface when bridge already exists.
If the bridge is already configure, the default route will point
to a xenbr interface and not an eth interface.  Handle this case.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-05-11 22:39:44 +01:00
cl349@firebug.cl.cam.ac.uk 15efc30a11 Add support to domain builders for loading kernels with physical addresses in the elf paddr and entry fields.
Add a new __xen_guest header field to distinguish between kernels with
the previous use of the paddr field and the new use.
Add a new __xen_guest header field to control the kernel entry point,
since the elf header entry field now points to a physical address.
This header field is also useful for supporting alternative entry
points in kernel images which run both on xen and native.
Also add a kernel config option to control whether the resulting kernel
should include compatibility code to run on Xen 3.0.2 or whether such
code such be left out, resulting in a kernel which will only run on
newer Xen versions.  Default to having compatibility enabled.
Kernels built with the new use of the elf header fields would otherwise
not work on Xen versions prior to this changeset.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-05-11 17:30:50 +01:00
vhanquez@kneesa.uk.xensource.com 7e8cc1fb7f dom0 and anonymous connections can create unlimited sized entries in the store.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-05-11 15:51:56 +01:00
vhanquez@kneesa.uk.xensource.com acd5a62ae9 Try to create runtime xenstored's directories at startup time.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2006-05-11 15:01:54 +01:00
Ryan Harper 6cd2d711be Fix up enforce_dom0_cpu test case to check that dom0 has at least 2 vcpus
online.  Also fix bogus call to vcpu-enable; xm now uses vcpu-set as method for
enable/disable of vcpus.  Previously after a successful test run, this test
would not leave dom0 in the same state as it was when the test started.  Also
some comment language changes and 80 column formatting.
2006-05-11 13:49:20 +01:00
kaf24@firebug.cl.cam.ac.uk 3ae4dcdda2 x86/64 has the wrong number of arguments defined for HYPERVISOR_xenoprof_op.
Signed-off-by: Ray Bryant <raybry@mpdtxmail.amd.com>
2006-05-11 13:45:10 +01:00
kaf24@firebug.cl.cam.ac.uk dd2e5172dc I am adding one more test case for vTPM migration. The new one does
local network migration without the 'live' parameter 3 times. The test
'04' that does live migration now tests local live migration 3 times.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-05-11 13:43:09 +01:00
kaf24@firebug.cl.cam.ac.uk 4df9ae27a2 Fix the building of the Xen TPM driver as module and prevents front-
and backends to be rmmod'ed by removing their module_exit line.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-05-11 13:42:20 +01:00
kaf24@firebug.cl.cam.ac.uk 118614a90c Fix a typo in xc_ptrace() and fix single-stepping when attached
to a live guest.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-11 11:33:07 +01:00
kaf24@firebug.cl.cam.ac.uk 8e5846fe5b When we copy packet sin netback/netfront make sure the new skb has
all the necessary fields initialised. In particular, before we were
not copying ip_summed and that screws up checksum offload.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-10 17:30:42 +01:00
kaf24@firebug.cl.cam.ac.uk b75af341bd This patch adds a boolean parameter 'network' to the save method of the
XendCheckpoint class to differentiate between network suspend/resume
(network=True) and local suspend/resume (network=False).
Instead of passing the 'live' parameter to the migration methods, this
'network' parameter is passed now. This ends up being merely a renaming
of the parameter.
A check with the xm-test suite against this change has resulted in no
additional errors.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-05-10 16:52:55 +01:00
kaf24@firebug.cl.cam.ac.uk 9f124d8334 Simply do not declare module_exit() handlers for netback/blkback, rather
than declaring the modules unsafe.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-10 16:47:00 +01:00
kaf24@firebug.cl.cam.ac.uk b5a919873c proto_csum_blank field gets lost if packet is copied in netback driver.
Signed-off-by: James Dykman <dykman@us.ibm.com>
2006-05-10 16:23:22 +01:00
kaf24@firebug.cl.cam.ac.uk cf6a9db5e6 The PciController class lacks a configuration method to re-generate the
configuration of an existing domain. This is needed for a domain to be
able to reboot and retain its PCI device configuration. This patch adds
such support.

Thanks to Mike Wright for reporting this problem and working with me to
fix it.

Signed-off-by: Ryan Wilson <hap9@epoch.ncsc.mil>
2006-05-10 16:07:46 +01:00
kaf24@firebug.cl.cam.ac.uk 4886fcc749 This patch enhances the Summagraphics emulation by adding 2 features:
1)  Move the tablet to the second serial port.  This way the tablet will
not interfere with people who want to use a serial console on the guest.

2)  Enhance the Summagraphics emulation so that the Windows XP driver
works.  Turns out the Windows driver was using capabilities the X driver
didn't care about and it wouldn't recognize the tablet without these
capabilities.

Signed-off-by: donald.d.dugger@intel.com
2006-05-10 16:06:55 +01:00
kaf24@firebug.cl.cam.ac.uk ff712d654d Reset Cirrus device model `VRAM' whenever a VGA/SVGA mode switch occurs.
If you change the video resolution on a Windows XP guest such that it uses
fewer bytes of VRAM (either by using fewer bytes per pixel or by lowering the
resolution) then some window backgrounds will become corrupted.  This happens
because the Windows XP Cirrus Logic driver assumes that VRAM is initialized
to 0xff whenever the video mode switches between VGA and SVGA.

Signed-off-by: Donald.D.Dugger@intel.com
2006-05-10 16:05:24 +01:00
kaf24@firebug.cl.cam.ac.uk 3f37f70c65 Clean up and refactor some parts of the vTPM and migration-related scripts.
In the external device migration script I am introducing a subtype
(-subtype <subtype>) from which the script's name is formed. Also all
unparsed parameters are passed to the called script.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-05-10 16:01:34 +01:00
kaf24@firebug.cl.cam.ac.uk 4420b4b625 Fix a couple of problems in the TPM backend driver.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-05-10 15:58:16 +01:00
kaf24@firebug.cl.cam.ac.uk 1d7579804b This small patch fixes new make-dependencies of the secpol_tool
Signed-off by: Reiner Sailer <sailer@us.ibm.com>
2006-05-10 15:49:47 +01:00
kaf24@firebug.cl.cam.ac.uk aef0217a07 Set up and tear down phys_proc_id, cpu_core_id, cpu_sibling_map
and cpu_core_map when CPUs come online and go offline.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-10 15:44:56 +01:00
kaf24@firebug.cl.cam.ac.uk 6d949bfd8d Fix blkif and netif backend teardown -- do not remove devices from
sysfs (and hence trigger hotplug callbacks) until the devices really
are dead. This fixes a bug where the deferred code to free a blk
device was running concurrently with a hotplug-remove callback which
would try to reclaim the underlying storage. In some cases the race
would be lost and the hotplug script would fail.

Thanks to the Zhu Han at Intel for finding the root cause of this
long-term and annoying bug!

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-10 13:27:17 +01:00
cl349@firebug.cl.cam.ac.uk 03e897a68f Fix PAE build: add CONFIG_I2O_EXT_ADAPTEC_DMA64=y to linux-defconfig_xen_x86_32.
From: Nakajima, Jun <jun.nakajima@intel.com>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-05-08 19:21:41 +01:00
cl349@firebug.cl.cam.ac.uk 782f4ebee1 Make cscope hgignore wildcard a little bit less permissive.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-05-08 17:18:19 +01:00
cl349@firebug.cl.cam.ac.uk 0c78843ebb Make Xen version numbers more flexible.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-05-08 16:41:22 +01:00
kaf24@firebug.cl.cam.ac.uk 9fb76f5882 Add module license to xenbus_be, otherwise the module cannot be loaded.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2006-05-08 14:54:22 +01:00
kaf24@firebug.cl.cam.ac.uk 9ce1129e03 The current Xen code for VMX is setting the gp fault vmexiting in
the EXCEPTION_BITMAP vmcs control. There is no need for that as VMM is
just plainly re-injecting back to the guest. The attached is a simple
patch to set the vmcs control properly.

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
2006-05-08 14:53:09 +01:00
cl349@firebug.cl.cam.ac.uk 3bd47fb5b6 Fix code which finds the default interface if there are static routes.
The current code will break if there are multiple scope global routes
since the "ip route list default" command doesn't use "default" as a
filter, and will output multiple devices which breaks the rest of the
script.
Also make the vif/xenbr/eth naming consistent, i.e. if your default
network interface is eth1, you get vif1 and xenbr1.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-05-08 10:36:13 +01:00
stekloff@dyn9047022152.beaverton.ibm.com fe913cb392 The buildroot xm-test grabs is no longer present, this patch fixes it.
Made it a minor release bump for xm-test so old ramdisk will work. The
ramdisk is functionally the same.

Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
2006-05-07 21:41:36 +01:00
emellor@leeni.uk.xensource.com 5afd6596ba Fix console runaway detection for the smallmem_neg test, following the changes
to have Console included as part of the Domain object.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-05-07 14:00:05 +01:00
emellor@leeni.uk.xensource.com aed92ee453 Abstract block-attach and block-detach calls, and add to that the correct
polling waiting for the device to connect and disconnect.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-05-07 13:34:45 +01:00
emellor@leeni.uk.xensource.com 4697d093c7 Move the logic to find the Xen Python scripts above the import statements.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-05-06 15:42:12 +01:00
emellor@leeni.uk.xensource.com 30907c5593 Merged. 2006-05-05 18:36:26 +01:00
emellor@leeni.uk.xensource.com c1124c5993 Use the auxbin module to find the appropriate install directory for our Python
scripts.

This fixes a bug with xm-test not working on 64-bit systems.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-05-05 18:36:12 +01:00
emellor@leeni.uk.xensource.com c185594788 Remove ssidref field from test -- this now only works if there is a policy in
place at the time.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-05-05 16:46:48 +01:00
kaf24@firebug.cl.cam.ac.uk e436b09622 Add more in_irq() checking. Add irq_enter()/irq_exit() where
they are missing in a few places.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-05 15:15:56 +01:00
kaf24@firebug.cl.cam.ac.uk c61c155041 Instead of just having the bootloader config sxp replace anything else,
merge with given values.  This will allow a bootloader to not have to
specify everything which is useful for bootloaders other than pygrub.

Signed-off-by: Jeremy Katz <katzj@redhat.com>
2006-05-05 14:09:07 +01:00
kaf24@firebug.cl.cam.ac.uk 31d6525e2b Fix injection of guest faults resulting from failed injection of a
previous event. We enter an infinite loop if the original failed
injection cannot be fixed up by Xen (e.g., because it's not a shadow
pagetable issue).

   The RHEL4 HVM guest hang issue was actually a side effect of
change-set 9699. In the rhel4 guest hang rc.sysinit init-script was
calls kmodule program to probe the hardware. The kmodule uses the kudzu
library call probeDevices(). For probing the graphics hardware in the
vbe_get_mode_info() function, sets up the environment and goes into the
vm86 mode to do the int x10 call. For returning back to protected mode
it sets up a int 0xff call. At the time of calling the int 0xff the
guest process pages were not filled up. And it was causing an infinite
loop of vmexits with the IDT_VECTORING_INFO on the int 0xff instruction.

        The reason for the infinite loop is changeset 9699. With that
the guest page fault was always getting overridden by the int 0xff gp
fault coming from the IDT_VECTORING_INFO. With the attached patch if VMM
is injecting exceptions like page faults or gp faults then
IDT_VECTORING_INFO field does not override it, and that breaks the
vmexit infinite loop for the rhel4.

Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
Signed-off-by: Edwin Zhai <edwin.zhai@intel.com>
2006-05-05 14:05:31 +01:00
kaf24@firebug.cl.cam.ac.uk be3309cba2 Fix python pciif script to reference correct 2.0 compatibility variable.
In the Xen 2.0.x compatibility section of xend (where we try to parse
the s-expressions if they came from an SXP configuration file for Xen
2.0.x), the wrong variable is referenced. This fix corrects the python
script to use the correct variable.

Thanks to Mike Wright for reporting this.

Signed-off-by: Ryan Wilson <hap9@epoch.ncsc.mil>
2006-05-05 14:01:43 +01:00
kaf24@firebug.cl.cam.ac.uk 5451ced6be Fix dr access from or to extended registers on x86_64.
Also some cleanups.
Signed-off-by: Xin Li <xin.b.li@intel.com>
2006-05-05 13:59:17 +01:00
kaf24@firebug.cl.cam.ac.uk 1f516c94dc Replace a bash-specific redirection in tools/ioemu/configure with a
standard POSIX one which allows the Xen tools to be built with a POSIX
shell other than bash.
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-05-05 13:58:13 +01:00
kaf24@firebug.cl.cam.ac.uk 71b15b97e4 It's unnecessary on MOV CRn to use "q" or "l" to indicate default
oparand size.
Signed-off-by: Xin Li <xin.b.li@intel.com>
2006-05-05 13:57:16 +01:00
kaf24@firebug.cl.cam.ac.uk 4a0f8a20b8 Replace a bash-specific substitution with equivalent POSIX /bin/sh
substitutions.  This allows a Xen-patched Linux to build when /bin/sh
is a POSIX shell other than bash.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-05-05 13:51:03 +01:00
kaf24@firebug.cl.cam.ac.uk b7f7d7a8ec Adjust skb->truesize appropriately in netback driver.
When you generate non-linear skb's as netback does, it is up to you
to ensure that truesize reflects the size of paged part of the skb.
Otherwise socket memory accounting in Linux falls apart.

Thanks to the new check that David Miller added to TCP we were able
to catch this bug.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-05-05 13:49:49 +01:00
kaf24@firebug.cl.cam.ac.uk 3b5459241b Fix IA64 transparent-virtualization issue (Xen may not be running).
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-05-05 13:46:59 +01:00