Commit Graph
10425 Commits
Author SHA1 Message Date
kfraser@dhcp93.uk.xensource.com 12794ba7df [XEN] Make the spurious page-fault detection logic
more robust. In particular it must be able to handle
spurious write faults on mappings that have been
changed from read-only to writable. If a CPU has a stale
read-only entry in its TLB, it is allowed to fault on
the next write access without re-walking the page table.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-16 18:18:55 +01:00
kfraser@dhcp93.uk.xensource.com 8d9ab5812a Merge with xen-ia64-unstable.hg. 2006-06-16 18:08:27 +01:00
awilliam@xenbuild.aw 9beb92215a merge with xen-unstable.hg 2006-06-16 10:18:54 -06:00
awilliam@xenbuild.aw 02395c12da merge with xen-unstable.hg 2006-06-16 09:10:08 -06:00
awilliam@xenbuild.aw 8c5baae7fc [IA64] cleanup
Disable a privify path.
Cleanup: warnings and static.

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-06-16 09:06:40 -06:00
kfraser@dhcp93.uk.xensource.com 583b822938 [XEN] Fix 10362 change to create_grant_va_mapping().
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-16 15:34:21 +01:00
kfraser@dhcp93.uk.xensource.com 15dfe74a22 [XEN] PTE updates do not need to use CMPXCHG instruction.
This is because the updates are already protected by a
per-domain lock. Using straightforward memory writes has
two advantages:
 1. Faster
 2. More correct (previously we could race accessed/dirty
    bit updates by other CPUs).
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-16 15:22:03 +01:00
kfraser@dhcp93.uk.xensource.com a2ee238fcf [LINUX] Use new XENMEM_exchange hypercall (where possible)
to provide watertight implementations that should never crash
in ENOMEM situations.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-16 14:45:01 +01:00
kfraser@dhcp93.uk.xensource.com 516250dac6 [XEN] New memory_op XENMEM_exchange. Allows atomic
exchange of one memory reservation for another of the
same size, but with different properties.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-16 14:43:54 +01:00
kaf24@firebug.cl.cam.ac.uk 12217db9c5 [LINUX] Export new gnttab_cancel_free_callback() to modules.
Signed-off-by: Charles Arnold <carnold@novell.com>
2006-06-16 10:52:49 +01:00
awilliam@xenbuild.aw 364f9d8028 merge with xen-unstable.hg 2006-06-15 10:23:57 -06:00
awilliam@xenbuild.aw e55daf766f [IA64] enable Xen compilation with debug=y
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-06-15 10:02:53 -06:00
awilliam@xenbuild.aw 331da5acb2 [IA64] reset_system
Cleanup: EFI_RESET_SYSTEM now always calls domain_shutdown.
machine_restart and machine_halt calls efi reset_system to do their job.

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-06-15 09:51:58 -06:00
awilliam@xenbuild.aw 7515eac375 [IA64] cleanup in domain.c
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-06-15 09:47:19 -06:00
awilliam@xenbuild.aw 42162a97c0 [IA64] work around for skbuff_ctor() on non-privileged domain
populate physmap/increase reservation hypercall fail with
extent order > 0 on non-privileged domain.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-06-15 09:10:14 -06:00
awilliam@xenbuild.aw fc22e34ca6 [IA64] fix garbage in irq_ia64.c kernel message
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-06-15 08:56:47 -06:00
awilliam@xenbuild.aw db9d4b7c78 [IA64] clean up "assign domain page ... already mapped!" printks
Signed-off-by: Al Stone <ahs3@fc.hp.com>
2006-06-15 08:46:43 -06:00
awilliam@xenbuild.aw 9f4691e169 [IA64] do not use interrupt_mask_addr inside Xen
Create current_psr_i_addr per cpu variables.
Inside Xen, do not use interrupt_mask_addr because it can be modified by
the guest.

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-06-15 08:42:34 -06:00
kaf24@firebug.cl.cam.ac.uk 1bf1344c7c [LINUX][PAE] Fix e820 setup for PAE guests: preserve high-order bits of max_pfn.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-15 13:30:35 +01:00
kaf24@firebug.cl.cam.ac.uk 89f1d989d2 [MINI-OS] Fix for event initialisation in Mini-OS. All events are masked when
the system is started up. This prevents from getting spurious events  
between hypercall to bind an event-channel and registering  
appropriate event handler.
Signed-off-by: Grzegorz Milos <gm281@cam.ac.uk>
2006-06-15 13:20:43 +01:00
kaf24@firebug.cl.cam.ac.uk d406847ecc [LINUX] Network buffers do not need to be multi-page contiguous
for unprivileged domains (in any case, can fall back to swiotlb).
On non-privileged domain of Xen/IA64, this caused some trouble.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-06-15 13:19:04 +01:00
kaf24@firebug.cl.cam.ac.uk 76f880fe7d [TOOLS] Introduce xc_evtchn_*() interface for interacting with /dev/xen/evtchn.
No longer open the device as non-blocking: all reads immediately follow
a select() on the device indicating it's ready to read.

Signed-off-by: John Levon <john.levon@sun.com>
2006-06-15 13:11:31 +01:00
emellor@leeni.uk.xensource.com a8bdc8130e Catch ValueError and OverflowError, to diagnose bad arguments.
Signed-off-by: Hiroyuki Yamamoto <yamamoto.hiroyu@jp.fujitsu.com>
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2006-06-15 11:52:23 +01:00
kaf24@firebug.cl.cam.ac.uk aedc7640e6 [LINUX] Only destroy a machine-contiguous memory region if
it really is contiguous (e.g., create_contiguous did not fail).
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-15 11:35:23 +01:00
awilliam@xenbuild.aw e9b1761432 [IA64] let VMM do itc sync for guest on VTI domain
Previously, on SMP VTI-domain, Guest OS was responsible for
syncing itc by calling ia64_sync_itc, but the round trip may
be very large on VTI domain, that may cause guest itcs are
not synced well and cause guest wall clock is not accurate.

This patch intends to fix this issue, when guest wants to sync
itc( vcpus other than vcpu0 write itc), VMM directly get vcpu0
itc for other vcpus.

Signed-off-by: Anthony Xu <anthony.xu@intel.com>
2006-06-14 16:05:45 -06:00
awilliam@xenbuild.aw 81bde47964 [IA64] cleanup warnings in mm.c
Signed-off-by: Kouya Shimura <kouya@jp.fujitsu.com>
2006-06-14 16:05:44 -06:00
awilliam@xenbuild.aw 4b6684a083 [IA64] Fix a bug in vmx_vcpu_pta
Signed-off-by: Anthony Xu <anthony.xu@intel.com>
2006-06-14 16:05:43 -06:00
awilliam@xenbuild.aw 2f34410a22 [IA64] Remove redundant ASSIGN_DOMAIN_MACH_PAGE in dom_fw.c
Signed-off-by: Kouya Shimura <kouya@jp.fujitsu.com>
2006-06-14 16:05:42 -06:00
kaf24@firebug.cl.cam.ac.uk c33ae33cb8 [HVM][QEMU] Fix SDL mouse "invisible wall".
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Signed-off-by: Don Dugger <donald.d.dugger@intel.com>
2006-06-14 22:15:13 +01:00
kaf24@firebug.cl.cam.ac.uk 45b1830267 [LINUX][PAE] More fixes to pgd allocation. Since allocating pmds
can sleep, we could race save/restore and end up with stale
machine addresses stores in pgd entries. Avoid this by
remembering virtuall addresses and translating to machine
addresses all at the end and protected by the pgd_lock.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-14 17:06:28 +01:00
kfraser@dhcp93.uk.xensource.com a5e28e588e [XEN] Abstract setting of master event-pending flag into asm/event.h.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-14 13:48:04 +01:00
kfraser@dhcp93.uk.xensource.com e8ef894fec [XENSTAT] Fix two realloc() usage errors in xenstat.
Based on original patch from Jimi Xenidis at IBM.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-14 13:31:38 +01:00
kaf24@firebug.cl.cam.ac.uk 2fd80b3aac [NET] front: Discard packets in tx ring rather than attempting retransmit
when reconnecting to backend driver (e.g., after save/restore or migrate).

Two main reasons for this: 
 1. The retransmit code is broken for fragmented packets. It would need
    a rewrite to cope with the new scatter-gather format.
 2. We will drop packets anyway, in both directions (e.g., takes some
    time for received packets to be redirected to new virtual interface;
    also further transmitted packets from the network stack are dropped
    after we call netif_carrier_off(), so even if we retransmite what's
    already in the ring it is likely that some subsequent packets will
    already be lost).

If this causes downtimes that are too long (particularly for live
relocation) then the whole strategy for buffering packets while the
frontend-backend connection is severed needs to be considered.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-14 13:11:44 +01:00
kaf24@firebug.cl.cam.ac.uk e2f381e315 [LINUX][PAE] Improve allocation strategy when PAE pgdirs must be below 4GB.
Moving the re-allocation to low memory into pgd_alloc() has several
advantages:
 1. Avoids race with save/restore where pgdir may end up above 4GB after
    save/restore.
 2. If pgdir cannot be re-allocated we can return failure to the caller
    rather than BUG().
 3. Slightly reduces diff against native Linux code.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-14 12:36:06 +01:00
kaf24@firebug.cl.cam.ac.uk be252f5f66 [LINUX][BLK] front: More care over device teardown.
1. We must ensure gnttab callbacks are disabled and all work
    flushed before tearing down device state. A new gnttab interface
    call is added for this purpose.
 2. blkif_free() must check for a request_queue before deref'ing it.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-14 11:19:53 +01:00
awilliam@xenbuild.aw 6ea824a3f6 [IA64] Fix vga acceleration for VTI domain
Now guest vhpt table of VMX domain is searched to insert some
entry into vtlb on the fly. However previous guard on memory 
attribute is only done for guest itc.d emulation. That breaks
VGA acceleration and this patch fixes it by moving check to
right place.

Signed-off-by Kevin Tian <kevin.tian@intel.com>
2006-06-13 15:05:33 -06:00
awilliam@xenbuild.aw f9f021d18d [IA64] Pull changes from xen-unstable.hg cset 10242 into mm.c
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-06-13 13:13:39 -06:00
awilliam@xenbuild.aw af12de808b [IA64] Remove Makefile entry for xenia64_init
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-06-13 12:50:47 -06:00
awilliam@xenbuild.aw 3d089e3ba1 merge with xen-unstable.hg 2006-06-13 12:12:24 -06:00
awilliam@xenbuild.aw ba7d0c6127 [IA64] Define mfn_to_local_pfn()
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-06-13 11:41:05 -06:00
kfraser@dhcp93.uk.xensource.com 00dc8b3bf1 [TOOLS] Fix PAE save/restore/migrate: we must flush
all pending 'mmu updates' before moving page directories
below 4GB.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-13 17:30:30 +01:00
awilliam@xenbuild.aw dcdd40d2e6 [IA64] define virt_to_mfn and mfn_to_virt
These are necessary to build w/ current xen-unstable

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-06-13 09:35:43 -06:00
kaf24@firebug.cl.cam.ac.uk 0708c1f9a0 [MINI-OS] Applications that provide their own app_main need not run the xenbus test.
Signed-of-by: John D. Ramsdell <ramsdell@mitre.org>
2006-06-13 16:07:16 +01:00
awilliam@xenbuild.aw e4f73d5c2a [IA64] Revert xen-ia64-unstable.hg cset 10237
back out the change set 10237 which causes domain creation failure.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-06-13 09:00:32 -06:00
awilliam@xenbuild.aw 59c720c672 [IA64] Revert xen-ia64-unstable.hg cset 10238
back out the change set 10238 which causes domU creation failure.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-06-13 08:59:26 -06:00
kaf24@firebug.cl.cam.ac.uk 1d0986e6b4 [LINUX] Eliminates a deadlock and reduce (sometimes significantly) the time
interrupts are off during context switch.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2006-06-13 15:56:28 +01:00
awilliam@xenbuild.aw 3e3a7bb8f3 [IA64] cleanup warning in xen/arch/ia64/linux-xen/time.c
Remove a wrong cleanup in xen/arch/ia64/linux-xen/time.c
itc_ratio.num and itc_ratio.den are defined u64 
in xen/include/asm-ia64/linux-xen/asm/pal.h.
These are the below.

typedef struct pal_freq_ratio {
        u64 den : 32, num : 32; /* numerator & denominator */
} itc_ratio, proc_ratio;

Signed-off-by: Akio Takebe <takebe_akio@jp.fujitsu.com>
2006-06-13 08:55:08 -06:00
awilliam@xenbuild.aw b2f4668542 [IA64] Update efi.c and rework xenheap location
This is a port of a newer upsteam efi.c to xen/ia64.  For the most
part, this patch is simply incorporating this upstream linux-ia64
patch into the tree:

http://www.kernel.org/hg/linux-2.6/?cs=fb781f6d3e81

To support this new code, xensetup needed to be modified to relocate
the dom0 kernel and initrd images without using efi_memmap_walk() as
this can no longer be called until after reserve_memory().  The dom0
kernel and initrd images are now only moved if necessary and the xen
MDT entry is expanded to cover the xenheap area and any relocated dom0
bits.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-06-13 08:45:22 -06:00
kaf24@firebug.cl.cam.ac.uk 9d43a190b1 [XM-TEST] Fix 02_block_device_write_verify.py test to parse md5sum output correctly.
The 02_block_device_write_verify.py test that I wrote is failing because
the regular expression to extract the md5sum is only looking at the
first line of output and the sum is in a subsequent line (after the
output from dd).

This patch fixes the test by adding the multiline flag to the search
parameters so that the search looks in all lines of the output for the
md5sum.  I added the multiline flag in all searches to make the tests
more robust against changes in the output format of the commands used.

I'm not exactly sure how this slipped through my testing.  I suspect
that I forgot to install the new python file after updating the test to
use dd and then tested the old version a second time by accident.
Either that or it really did work when I tested it and the output format
has changed for some reason.

I tested this patch against xen-unstable 10326 and the 02 test fails
without the patch and succeeds with it.

Thanks to James Dykman for some help with this.

Signed-off-by Harry Butterworth <butterwo@uk.ibm.com>
2006-06-13 15:41:27 +01:00
kaf24@firebug.cl.cam.ac.uk df70dfb525 [ACM] Provide the framework needed for resource labeling.
Subsequent patches will follow in the coming weeks that will enable 
Xen ACM to control assignment of resources (e.g., block devices and 
networking) to virtual machines based on resource labels and the 
active security policy.

Signed-off-by: Bryan D. Payne <bdpayne@us.ibm.com>
Signed-off-by: Reiner Sailer <sailer@us.ibm.com>
2006-06-13 15:38:58 +01:00