Commit Graph
425 Commits
Author SHA1 Message Date
awilliam@xenbuild.aw dff14d2746 [IA64] Cleanup for PV-on-HVM for IPF
Signed-off-by: Tsunehisa Doi <Doi.Tsunehisa@jp.fujitsu.com>
Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com>
2006-09-10 14:26:27 -06:00
kaf24@firebug.cl.cam.ac.uk 8b7ee4cecb [XENBUS] Make frontend drivers shutdown cleanly.
This patch makes frontend drivers being shutdown when devices_shutdown()
is called and walks down the device tree.  Most of it is handled by the
xenbus core, which got a new function for the bus->shutdown callback.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-09-01 00:42:14 +01:00
kaf24@firebug.cl.cam.ac.uk 5182367c40 [XENBUS] Introduce new "online" node for backend drivers.
Driver changes:  Make backend drivers check it when entering Closed
state, only unregister devices when the "online" node is either "0" or
not present.  The later maintains backward compatibility.

Tools changes:  Update "online" node when creating and hot-unplugging
devices.

Background: When kexec'ing a new kernel, the old kernel's frontend
driver will shutdown, but the backend device should *NOT* disappear
due to that, so the new kernel instance can reconnect.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-09-01 00:33:19 +01:00
kaf24@firebug.cl.cam.ac.uk e957a7cb4a Add xenbus_strstate() helper function for more readable debug output.
From: Gerd Hoffmann <kraxel@suse.de>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-09-01 00:20:42 +01:00
awilliam@xenbuild.aw e012111cf5 [IA64] Modify sparse headers for PV-on-HVM/IPF
Signed-off-by: Tsunehisa Doi <Doi.Tsunehisa@jp.fujitsu.com>
Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com>
2006-08-28 16:16:07 -06:00
awilliam@xenbuild.aw 26cb12a513 [IA64] Clean up: change asm constraints and remove _hypercall_imm*
Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-08-24 11:42:24 -06:00
awilliam@xenbuild.aw 0bbee1ed75 [IA64] PV-to-HVM prep for maddr.h
Signed-off-by: Tsunehisa Doi <Doi.Tsunehisa@jp.fujitsu.com>
Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com>
[merged with existing maddr.h]
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-08-23 12:56:10 -06:00
awilliam@xenbuild.aw 3edc42f921 [IA64] split parts of page.h into maddr.h
ia64 support for xen-unstable.hg cset 11081:9c953e1b6fad

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-08-23 11:15:29 -06:00
awilliam@xenbuild.aw 9f557e7ff2 merge with xen-unstable.hg 2006-08-23 11:11:27 -06:00
awilliam@xenbuild.aw 417209a93e [IA64] Add stubs to Linux/IPF for the new hvm_op hypercall.
Signed-off-by: Tsunehisa Doi <Doi.Tsunehisa@jp.fujitsu.com>
Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com>
2006-08-22 14:44:13 -06:00
kfraser@localhost.localdomain b3ea76b1e0 [HVM] Clean ups for PV-on-HVM drivers. In particular, platform-pci
driver can now handle multi-page hypercall stub areas.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-22 17:16:58 +01:00
kfraser@localhost.localdomain 314ded7410 [x86_64] Guests no longer set _PAGE_USER on kernel mappings.
This may allow guest kernels to be run outside ring 3 in future, and
also provides scope for optimisations today (e.g., using global bit on
user mappings).

Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-22 15:26:40 +01:00
kaf24@localhost.localdomain e7b9a93ed4 [XENBUS] Allow user of xenbus_read_driver_state() to distinguish
absence of state field in xenstore by returning XenbusStateUnknown
rather than XenbusStateClosed.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-19 14:28:10 +01:00
kaf24@localhost.localdomain 35f4fc005c [LINUX] Replace uses of CONFIG_XEN_PRIVILEGED_GUEST with is_initial_xendomain().
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2006-08-19 12:08:12 +01:00
kaf24@localhost.localdomain 587411253f [NET] front: Fix rx buffer leak when tearing down an interface.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-08-19 10:58:07 +01:00
kfraser@localhost.localdomain a03d12d189 [LINUX] Allow xenbus to be built as a module.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-17 16:28:47 +01:00
kfraser@localhost.localdomain e3e351919c [LINUX] Define is_initial_xendomain() to zero for HVM drivers.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-16 16:16:32 +01:00
kfraser@localhost.localdomain 40daa87afb [LINUX] Update the hvm_op wrapper now that the return value of get_param is in
the parameter structure rather than the hypercall return value.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-16 16:15:46 +01:00
awilliam@xenbuild.aw 28efc9d73d [IA64] fix non-CONFIG_XEN sparse tree build
This patch fixes some over-zealous code removal with the P==M
cleanup.  Some of the P==M code was shared with the bare metal kernel.
Also cleaned up a couple places we should have used CONFIG_XEN.

From: Juan Quintela <quintela@redhat.com>
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-08-16 09:15:17 -06:00
kfraser@localhost.localdomain b8f69c1f51 [NET] back: Support copying packets to the frontend on receive path.
Signed-off-by: Steven Smith <ssmith@xensource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-16 16:01:00 +01:00
awilliam@xenbuild.aw ad81630fe1 [IA64] copy_from/to_guest
This patch fixes the copy_from/to_guest problem.
As Akio reported, modularised netback causes dom0's down.

The following process is happened in gnttab_transfer()@
xen/common/grant_table.c:

  gnttab_transfer()
   => steal_page()
     => assign_domain_page_cmpxchg_rel()
       => domain_page_flush()
         => domain_flush_vtlb_all()  // all TLBs are flushed
   ...
   => __copy_to_guest_offset()               // always fail to copy

The embedded netback module has no problem because it uses TR pinned
data.  But modularised one is out of TR. So copy_from/to_guest issue
must be solved in order to modularise drivers.

Signed-off-by: Kouya SHIMURA <kouya@jp.fujitsu.com>
2006-08-14 14:21:21 -06:00
kfraser@localhost.localdomain 2b88d7ed5f [LINUX] Provide a handy macro for detrmining if we are domain0.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-14 14:44:31 +01:00
kfraser@localhost.localdomain 30b586b9fb [LINUX] Split useful bits of page.h into new header maddr.h.
Split the bits of page.h which are needed by PV-on-HVM drivers out
into a separate header file, so that it's a bit easier to get the xenolinux
machine address functions when compiled against a native kernel.

Signed-off-by: Steven Smith <ssmith@xensource.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-14 13:54:10 +01:00
kfraser@localhost.localdomain c9edca86f1 [HVM][LINUX] Add a header file with wrappers for hvm_op hypercall.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-14 11:35:57 +01:00
kfraser@localhost.localdomain 13fbff7760 [HVM] Add stubs to Linux for the new hvm_op hypercall.
Signed-off-by: Steven Smith <ssmith@xensource.com>
2006-08-14 11:33:50 +01:00
awilliam@xenbuild.aw bc218fa824 merge with xen-unstable.hg 2006-08-09 08:34:06 -06:00
Ian.Campbell@xensource.com 0f5fbb45a0 Fix BUG_ON on switch_mm if XENFEAT_writable_page_tables is enabled.
Signed-of-by: Ian Campbell <ian.campbell@xensource.com>
2006-08-09 11:26:11 +01:00
kaf24@firebug.cl.cam.ac.uk 7e9fd035da [LINUX] Fix a couple of benign diffs against vanilla spinlock.h.
From: Jan Beulich
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-07 16:07:20 +01:00
awilliam@xenbuild.aw 443287f1b8 [IA64] Remove P==M support
Remove the old P==M dom0 memory model support.  It's likely
broken by now anyway.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-08-04 09:32:00 -06:00
kfraser@localhost.localdomain 177155de98 [LINUX] Do not early-unpin pagetables that contain foreign mappings.
This fixes a bug whereby foreign pages were freed by the unpin, which
then become owned by the local domain before it destroys its ptes.
It therefore (erroneously) detects the mappings as local and so
updates reference counts, leading to crashes.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-01 15:48:48 +01:00
kfraser@localhost.localdomain 160bfb4e1c [LINUX] update_va_mapping multicalls: Use MULTI_UVMxxx_INDEX where possible.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2006-07-28 17:25:20 +01:00
kfraser@localhost.localdomain 6faab8acaf [PCI] Pcifront for ia64.
Added in Kconfig.
On ia64, use ia64 sysdata instead of pcifront genuine one.
Fix a warning on xenbus.c

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-07-28 17:23:15 +01:00
awilliam@xenbuild.aw 31423d8a91 merge with xen-unstable.hg 2006-07-25 12:19:05 -06:00
awilliam@xenbuild.aw 8cf361e195 [IA64] vDSO paravirtualization: paravirtualize vDSO
paravirtualize vdso areabased on Kevin's pointout and Dan's Idea.
introduce hyperprivop HYPERPRIVOP_RSM_BE and HYPERPRIVOP_GET_PSR.
and paravirtualize vdso area using them.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-07-24 13:43:35 -06:00
awilliam@xenbuild.aw 89b0862b3a [IA64] Save & restore.
xc_ia64_linux_save.c and xc_ia64_linux_restore.c added.
vcpu context has more registers and states (eg: tr registers).
Per cpu irqs are deallocated when cpu is switched off.
#if/#endif added in reboot.c for ia64.

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-07-11 12:51:18 -06:00
kfraser@localhost.localdomain 3863ac76d1 [LINUX] Define dma_get_cache_alignment even on x86/64.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-07-10 17:33:45 +01:00
kfraser@localhost.localdomain b13a112805 [NET] net-gso.patch: Fix up GSO packets with broken checksums
Here is the original changelog:

   [NET] gso: Fix up GSO packets with broken checksums

   Certain subsystems in the stack (e.g., netfilter) can break the
   partial
   checksum on GSO packets.  Until they're fixed, this patch allows
   this to
   work by recomputing the partial checksums through the GSO
   mechanism.

   Once they've all been converted to update the partial checksum
   instead of
   clearing it, this workaround can be removed.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-07-10 15:36:04 +01:00
kaf24@firebug.cl.cam.ac.uk d2f56f3181 Merge with xen-ia64-unstable.hg 2006-07-03 08:35:12 +01:00
kaf24@firebug.cl.cam.ac.uk 10e88b13f4 Use explicit accessors to handle unusually-sized atomic operations in grant table code.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
2006-06-30 10:10:39 +01:00
awilliam@xenbuild.aw 5c8c8991da merge with xen-unstable.hg 2006-06-28 07:52:21 -06:00
kaf24@firebug.cl.cam.ac.uk f675a984a4 [NET]: Added GSO support
Imported GSO patch.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2006-06-28 12:03:01 +01:00
awilliam@xenbuild.aw 51cd0d362b merge with xen-unstable.hg 2006-06-23 15:33:25 -06:00
awilliam@xenbuild.aw 312722e414 [IA64] Allow guest to set the address of shared_info.
Add a new hypercall: SET_SHARED_INFO_VA.
Cleanup of asm-xsi-offsets: do not define absolute address, use a new macro.
Cleanup of linux asm-offsets: use a macro for xen mapped regs.
xensetup.S: set the shared_info address (disabled if using compatibility).
privop.h: May redefined XSI_BASE (not yet enabled for compatibility).
Vocabulary coherence: use XMAPPEDREGS_ prefix.
Cleanup of xensystem.h

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
2006-06-23 09:46:39 -06:00
awilliam@lappy e212f000dc [IA64] build linux kernel without using asm-xsi-offsets.h
All the relevent information are already exported with arch-ia64.h
Use linux asm-offsets.h to write xsi offsets defines.

Signed-off-by: Tristan Gingold <tristan.gingold@bull.net>
[Removed xen-mkbuildtree-post/-pre]
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-06-20 17:02:22 -06:00
awilliam@xenbuild.aw e836cc40e4 [IA64] fix mfn_to_local_pfn() for dma context
Thanks to Kevin for tracking down this problem.  This is a temporary
solution until we come up with something better for ia64.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-06-20 10:40:14 -06: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
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
awilliam@xenbuild.aw 364f9d8028 merge with xen-unstable.hg 2006-06-15 10:23:57 -06:00