Commit Graph
390 Commits
Author SHA1 Message Date
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
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 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 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
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
Ian.Campbell@xensource.com c9c67d5a02 [LINUX] Correctly return the results of {event_channel_op,physdev_op}_compat
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-06-13 10:14:20 +01:00
kaf24@firebug.cl.cam.ac.uk 92fffc0727 [LINUX][XENBUS] replace xenbus_transaction_t with an opaque transaction ID.
xenbus_transaction_t -> struct xenbus_transaction, which just contains
a single u32.  Also renamed XBT_NULL to XBT_NIL to emphasize that it
isn't a NULL pointer, but a NIL transaction ID.  Compile and boot tested.

Signed-off-by: Jeremy Fitzhardinge <jeremy@xensource.com>
[chrisw: updated for xen-unstable from patchqueue]
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
2006-06-09 14:25:46 +01:00
kaf24@firebug.cl.cam.ac.uk 40c3d9a1be [LINUX][XENBUS] Drop (struct xenbus_device)->data, and simply use ->dev.driver_data
instead, since that's what it is there for.  Similar to patch
in patchqueue started by Jeremy, and expanded by me to include all
relevant drivers in xen-unstable.

Cc: Jeremy Fitzhardinge <jeremy@xensource.com>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
2006-06-09 14:23:50 +01:00
awilliam@xenbuild.aw 45758ec272 [IA64] sparse tree cleanups
Here's a first pass at some sparse tree cleanups based on feedback
 we've gotten on linux-ia64.  I haven't taken all of the comments into
 account yet, this is just a start.  Specific changes:

  - CONFIG_ARCH_XEN is no longer necessary
  - simple is_running_on_xen() checks can be handled w/o CONFIG_XEN
  - pulled forward a drivers/xen/Makefile change that broken make clean
  - changed some comments from C++ style to C
  - turned HYPERVISOR_ioremap into a macro for !CONFIG_XEN
  - made hypervisor.h and privop.h include-able for !CONFIG_XEN

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-06-08 10:17:22 -06:00
kaf24@firebug.cl.cam.ac.uk 3f63cf9724 [LINUX] Only trigger unhandled irq path if irq is not shared across
multiple guests (another guest may have handled the interrupt).
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-08 10:11:04 +01:00
kaf24@firebug.cl.cam.ac.uk 3729abf36e [LINUX] Rename hw_resend_irq to allow it to be defined seperately per arch.
Signed-off-by Kevin Tian <kevin.tian@intel.com>
2006-06-07 14:38:36 +01:00
kaf24@firebug.cl.cam.ac.uk d404680bc3 Use explicitly-sized types in the dom0_ops and privcmd structures.
As discussed previously, the these operations are not performance-sensitive, so
the additional cache footprint shouldn't be an issue.

Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
2006-06-06 10:25:59 +01:00
kaf24@firebug.cl.cam.ac.uk ab8096f27d Represent PFNs with their own type, rather than 'unsigned long'.
('long' changes size and alignment between 32- and 64-bit ABIs.)
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
2006-06-06 09:48:17 +01:00
awilliam@xenbuild.aw ed2f30d1f5 [IA64] paravirtualize vdso
paravirtualize vdso area.
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-06-03 11:16:47 -06:00
kaf24@firebug.cl.cam.ac.uk 44beffcd61 [LINUX] Simply shared_info mapping code. Always use a fixmap.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-02 19:14:44 +01:00
kaf24@firebug.cl.cam.ac.uk 6d747ccc8f [PAE] Fix support for pgdirs above 4GB. Requires an interface change so that %cr3
is extended to include high-order address bits at bottom of %cr3 value.
Guests who understand this interface change publish the fact by setting the
option 'PAE=yes[extended-cr3]' in their __xen_guest section.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-06-02 11:46:24 +01:00
awilliam@xenbuild.aw d3febd5582 [IA64] fix up a few more warnings
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-05-31 16:07:47 -06:00
awilliam@xenbuild.aw 84db3ab496 merge with xen-unstable.hg 2006-05-31 13:05:21 -06:00
kfraser@dhcp93.uk.xensource.com 1f9df5417a Fix ACM hypercall macros (broke the x86/64 and ia64 builds).
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-31 13:26:10 +01:00
kaf24@firebug.cl.cam.ac.uk 9fea9fb410 [ACM] Add a hypervisor call macro to the linux kernel; it
completes the alignment of the ACM call interface with the other Xen 
hypervisor call interfaces. This macro is used to call from the a guest 
kernel directly into the ACM hypervisor module.

Signed-off by: Reiner Sailer <sailer@us.ibm.com>
Signed-off by: Bryan D. Payne <bdpayne@us.ibm.com>
2006-05-31 07:23:54 +01:00
kaf24@firebug.cl.cam.ac.uk 6b85882e12 Fix x86/64 definition of dma_get_cache_alignment().
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-31 07:20:36 +01:00
awilliam@xenbuild.aw a342eb4e85 [IA64] use is_running_on_xen()
Now xen drivers use is_running_on_xen() to check whether it runs on 
xen or bare metal. There remains many if (running_on_xen) in ia64
specific codes. This patch replaces running_on_xen with is_running_on_xen()

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-05-30 10:31:19 -06:00
kaf24@firebug.cl.cam.ac.uk 3231ebb6ba Define halt() and safe_halt() properly for Linux-on-Xen. Remove duplicated
code for initial bringup of secondary VCPUs.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-30 13:29:29 +01:00
kaf24@firebug.cl.cam.ac.uk e8ea99cff2 Fix SMP boot for kernels without CONFIG_HOTPLUG_CPU.
The function cpu_is_allowed() appears that it should return a boolean
but in fact returns zero on success and an errno on failure. Thus
rename it to the more vague cpu_up_check(), in line with its return
value and thge fact it has unspecified side effects.

Fix the macro definition of cpu_up_check() when building non-hotplug
kernel to return zero rather than one (which always failed secondary
cpu bringup!).

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-28 09:46:30 +01:00
awilliam@xenbuild.aw 7a3587d6e5 merge with xen-unstable.hg 2006-05-26 13:41:49 -06:00
Ian.Campbell@xensource.com 1fa74a12d2 Move include/asm-x86_64/e820.h to include/asm-x86_64/mach-xen/asm/e820.h
This fixes the native build.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>


--HG--
rename : linux-2.6-xen-sparse/include/asm-x86_64/e820.h => linux-2.6-xen-sparse/include/asm-x86_64/mach-xen/asm/e820.h
2006-05-26 11:23:55 +01:00
kaf24@firebug.cl.cam.ac.uk 7dbca9d720 Remove net_driver_util module. Inline the one mac-parsing function
into the netfront and netback drivers. Take the opportunity to fix
the mac-parsing logic.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-25 22:57:44 +01:00
kaf24@firebug.cl.cam.ac.uk f7ea0be1ff Separate xenbusstate enumeration from typedef. Avoid using the typedef
in Linux coe as it is consider bad coding style.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-25 14:15:49 +01:00
awilliam@xenbuild.aw 80597c41d7 [IA64] GNTMAP_readonly support linux part
add read only mapping support.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-05-24 10:59:28 -06:00
awilliam@xenbuild.aw bc77a64b00 [IA64] work around ENOSYS vs EINVAL in ioremap
We should not panic the domain for an EINVAL return from the ioremap
hyerpcall.  This was only meant for ENOSYS.  Long term this is probably
not the best place for this kind of sanity checking.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-05-23 17:05:27 -06:00
awilliam@xenbuild.aw c7c052954b [IA64] Final patch to make evtchn fully working for xen/ia64
OK, this is the last one of patch sets, which enables xen/ia64 to work
on event channel mechanism fully. Now user may observe /proc/interrupts 
of dom0 as:

           CPU0
 34:         12        Phys-irq  ide0
 39:          0        Phys-irq  acpi
 45:        322        Phys-irq  serial
 48:     115006        Phys-irq  peth0
 49:      16269        Phys-irq  ioc0
 50:         31        Phys-irq  ioc1
 51:          2        Phys-irq  ehci_hcd:usb1
 52:          0        Phys-irq  uhci_hcd:usb2
 53:         55        Phys-irq  uhci_hcd:usb3
256:          0     Dynamic-irq  RESCHED0
257:          0     Dynamic-irq  IPI0
258:      44572     Dynamic-irq  timer0
259:       2316     Dynamic-irq  xenbus
260:       8304     Dynamic-irq  blkif-backend
261:      25947     Dynamic-irq  vif3.0
ERR:          0

Based on this patch, dom0's performance is not affected, while domU's
network output is seen with several percents increase. More important,
now xen/ia64 can progress a base step towards driver domain support!

Signed-off-by Kevin Tian <kevin.tian@intel.com>
2006-05-23 09:17:57 -06:00
awilliam@xenbuild.aw a2b8c45b60 [IA64] Add do_callback_ops
Signed-off-by Kevin Tian <kevin.tian@intel.com>
2006-05-23 08:24:09 -06:00
awilliam@xenbuild.aw 907079557f [IA64] Import linux header files
Import hw_irq.h and irq.h from linux

Signed-off-by Kevin Tian <kevin.tian@intel.com>
2006-05-23 08:18:48 -06:00
kaf24@firebug.cl.cam.ac.uk c9d2f9fc59 Move Xen CPU hotplug code into new file cpu_hotplug.c.
Cleaner and allows use by architectures which aren't currently
using Xen's smpboot.c.

Based on an original patch by Tristan Gingold.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-05-23 12:05:08 +01:00