Commit Graph
2028 Commits
Author SHA1 Message Date
kfraser@localhost.localdomain 6b5e36a305 linux: improve x86 page table handling performance
Where possible,
- use hypercalls instead of writing to read-only pages
- fold TLB flushes into page table update hypercalls
- on PAE, use single-access updates instead of two-access ones

The single change to PAE pte_clear() yields a 25-30% boost for kernel
builds on a 4x2x2 CPUs, 8Gb box; the other changes together yield
improvements of 2-5%.

Also, adjust backward compatibility handling in a few more places.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-04-05 09:10:33 +01:00
kfraser@localhost.localdomain c937f696d7 linux/x86-64: fix unwind information
Mostly adjusting mis-merges dating back to the 2.6.14 merge.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-04-05 08:59:12 +01:00
kfraser@localhost.localdomain c93368e0fb linux: make compatibility config options more scalable
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-04-05 08:58:32 +01:00
Steven Hand 1b46e1faf3 Fix hvm balloon driver; missed this hunk in last checkin.
Signed-off-by: Steven Hand <steven@xensource.com>
2007-04-05 08:24:56 +01:00
Keir Fraser ed34f48aa8 Various cleanups and fixes for PV-on-HVM drivers.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-04-04 21:49:04 +01:00
Steven Hand 1d3e27e802 Initial check-in to support PV balloon driver within HVM guests.
Still todo:

 - fix mapcache invalidation (should happen in Xen)
 - support 32-on-64 mode correctly

Signed-off-by: Steven Hand <steven@xensource.com>
2007-04-04 19:59:10 +01:00
Ian Campbell 76de76e0f3 RFLAGS is in a known good state at start of day so no need to explicitly initialize.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-04-04 15:57:49 +01:00
Keir Fraser 75ba97629b linux: Remove a few redundant config options. Build util.c for ia64
and ifdef out a couple of functions that are not yet fully generic.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-31 19:02:09 +01:00
Keir Fraser f24c3877e5 linux: Avoid use of ptep_get_and_clear_full name as it's a macro on
some architectures.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-31 17:22:46 +01:00
Keir Fraser c15c303a40 linux gntdev: Mark x86-specific code as such with ifdef.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-31 16:39:14 +01:00
Keir Fraser 990f0419bd linux: User-space grant table device.
A character device for accessing (in user-space) pages that have been
granted by other domains.

Signed-off-by: Derek Murray <Derek.Murray@cl.cam.ac.uk>

Fix ioctl interface to be 32/64-bit invariant. Move xen_class
mechanism to common util.c.

Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-31 13:53:24 +01:00
Keir Fraser 7fd0f937ba linux: Add a hook before a page table entry is cleared, for use with
the grant-table device.

Signed-off-by: Derek Murray <Derek.Murray@cl.cam.ac.uk>
2007-03-31 12:42:02 +01:00
Ian Campbell ea1303c633 [LINUX] Explcitly include linux/mutex.h in files which use mutexes, rather then
relying on an include via some other header.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-03-30 17:33:31 +01:00
Ian Campbell ea62867372 [LINUX] Make sure to initialiase the xen features bitmap before first use on x86_64.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-03-30 14:13:53 +01:00
Tim Deegan 9dd742c907 [HVM] Save/restore: PV-on-HVM driver save/restore support
Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>
2007-03-29 16:27:52 +00:00
Keir Fraser abaff6993d pciback: Devices can lose config space info on D3->D0 transition, yet
they may not (and even if they try, can not) restore the BARs. Since
Linux does not do this for us, pciback must do it for itself manually.

Possible todo: Restore all first 64 bytes of the config space?

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-28 20:19:11 +01:00
kfraser@localhost.localdomain 6a6ebb9210 linux pciback: Proper fix for build failure.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-03-28 15:01:24 +01:00
kfraser@localhost.localdomain 573fcbc6f4 linux: Fix the pciback build (temporary hack).
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-28 14:42:54 +01:00
kfraser@localhost.localdomain 8588d662d4 xenbus: check function return values of functions declared with
__must_check post-2.6.18.

This implies completely suppressing frontend/backend operations if the
respective bus or device registration failed.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-03-28 13:56:22 +01:00
kfraser@localhost.localdomain 3352268c6c pciback: check function return values of functions declared with
__must_check post-2.6.18.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-03-28 13:55:01 +01:00
kfraser@localhost.localdomain 2405a261cd linux evtchn: Read function in evtchn driver requires locking.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-28 13:52:03 +01:00
Christian Limpach a712e471e2 [linux] Fix xenbus device to allow replies larger than 4096 bytes.
Also fix reply_queue mutex across fragmented replies and for concurrent
readers.

Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2007-03-28 11:01:58 +01:00
kfraser@localhost.localdomain 8e90ca4a3d Merge with xen-ia64-unstable.hg 2007-03-28 10:38:41 +01:00
kfraser@localhost.localdomain f3bdb5082b linux/x86-64: cleanup the Xen-specific macros in entry-xen.S
- SWITCH_TO_KERNEL is dead (and was broken)
- comments to HYPERVISOR_IRET were somewhat outdated
- updates of selecor RPLs shouldn't be done with byte size to avoid
  store-to-load forwarding issues

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-03-27 17:23:33 +01:00
kfraser@localhost.localdomain d0e5cf5462 linux: Fix for missing response to XS_UNWATCH request.
From: Magnus Carlsson <magnus@galois.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-27 16:19:25 +01:00
kfraser@localhost.localdomain 2ebb7bdf0d linux: Fix a compiler warning (unused local variable).
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-03-27 11:54:16 +01:00
awilliam@xenbuild2.aw 5b73247b5a [IA64] Remove P2M workaround
The ia64 p2m semantic is now fixed. remove unnecessary work around patch.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2007-03-26 09:17:25 -06:00
awilliam@xenbuild2.aw 5ea306faca merge with xen-unstable.hg 2007-03-22 09:30:54 -06:00
Ian Campbell 27c451323a LINUX: x86_64: start_pfn should be initialised even when XENFEAT_auto_translated_physmap is set.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-03-21 08:51:51 +00:00
awilliam@xenbuild2.aw ebdb5845be merge with xen-unstable.hg 2007-03-20 15:19:38 -06:00
Ian Campbell 3b8a13159a [LINUX] Update crash-kernel-32-on-64.patch with more sensible version from -mm.
The previous version had side effects outside of the crash dump code.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-03-19 14:00:07 +00:00
Keir Fraser c95d97855e Fix up nosegneg vsyscall elfnote.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-17 12:24:32 +00:00
kfraser@localhost.localdomain fbf7473b3a linux: Various cleanup and locking clarification (and fixing!)
of mm pinning/unpinning logic.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-16 15:19:08 +00:00
kfraser@localhost.localdomain 3a4b9dc822 Revert CONFIG_SPLIT_PTLOCK_CPUS change of 14209:1061c7bff38f3e6e66fee96c407977ad55b3f2f2.
Jan Beulich points out that it's not safe against mm pinning and unpinning.

Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-16 15:18:33 +00:00
kfraser@localhost.localdomain f326023b83 xenbus: Clarify and simplify barrier usage.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-16 10:42:25 +00:00
Ian Campbell 6b0c303dfe [LINUX] Don't pin the initial page tables on x86_64 when XENFEAT_writable_page_tables.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-03-16 10:24:56 +00:00
awilliam@xenbuild2.aw bd56728806 merge with xen-unstable.hg 2007-03-15 09:04:23 -06:00
kfraser@localhost.localdomain 4da77d5b3f net back: Quieten loud error path.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-15 14:51:32 +00:00
Jake Wires 5fc295e4de [BLKTAP] remove spurious error message
Signed-off-by: Jake Wires <jwires@xensource.com>
2007-03-14 14:18:51 -07:00
Ian Campbell a84c4f75e5 [LINUX] Kexec: Ensure that pages allocated for kexec have MFNs which are within
the required limits.

Previously we were lucky since most dom0 pages would be low enough but now Xen
is more aggressive in giving out higher MFNs when it can.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-03-14 16:39:32 +00:00
kfraser@localhost.localdomain 26e24b46d1 linux: No need to force pcibios_scan_all_fns() on modern Xen.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-13 13:28:26 +00:00
Ian Campbell f63d9525d5 [LINUX] Fix typo so 3.0.4 compatability works.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2007-03-13 09:07:55 +00:00
awilliam@xenbuild2.aw 04a0164bad merge with xen-unstable.hg 2007-03-12 10:07:08 -06:00
awilliam@xenbuild2.aw 5171dd3120 [IA64] PV steal time accounting
Signed-off-by: Atsushi SAKAI <sakaia@jp.fujitsu.com>
2007-03-12 09:39:59 -06:00
kfraser@localhost.localdomain 79ae7e51e1 linux: Adjust memory allocation condition in netback to reduce memory
pressure on Xen and avoid unnecessarily stalling receives.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-03-12 14:55:02 +00:00
kfraser@localhost.localdomain 415ecbe777 linux: No need to manually bring VCPUs online across 'fast' save/restore.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-12 14:11:43 +00:00
kfraser@localhost.localdomain e260cd0a07 The Xen console intercepts ^O and prevents it from propagating
through to the guest.  However, ^O is a useful key in bash and in
Emacs.  This patch changes the console to pass a single ^O
through to the guest when it is pressed twice.

Signed-off-by: Ben Pfaff <blp@cs.stanford.edu>
2007-03-12 11:04:34 +00:00
kfraser@localhost.localdomain aca8807ff0 Fix valid_phys_addr_range() prototype of xen /dev/mem.
The second argument is size_t, not size_t *.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2007-03-12 11:03:07 +00:00
kfraser@localhost.localdomain ac4fb3c4ec pci back: Various fixes.
- remove superfluous call to pciback_field_is_dup()
- fix a variable type mismatch in pciback_field_is_dup()
- make readability improvements by using the OFFSET macro
- revises quirk data output via the sysfs quirks node so that
- displayed offset information includes base_offset.

Thanks to Jambunathan K. for giving such specific bug diagnosis.

Signed-off-by: Chris Bookholt <hap10@tycho.ncsc.mil>
2007-03-10 17:01:21 +00:00
kfraser@localhost.localdomain 505ef3ea86 Add flags field to VCPUOP_set_singlsehot_timer.
Flag 'future' causes Xen to check if the timeout is in the past and
return -ETIME if so.
From: Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-03-10 16:58:11 +00:00