Commit Graph
885 Commits
Author SHA1 Message Date
kfraser@localhost.localdomain 87f272150c linux: Add trivial forwarding of dma_{,un}map_page when not using highmem
Use non-trivial dma_{un,}map_page only when CONFIG_HIGHMEM, allowing
to not compile swiotlb_{un,}map_page in that case, which in neither
case need exporting.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-01-12 15:35:52 +00:00
kfraser@localhost.localdomain d779bf9529 linux: Reduce restrictions on address width for DMA operations
Use address width needed by device rather than dma_bits in
dma_alloc_coherent().
Probe supported address width in swiotlb initialization.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-01-12 15:34:30 +00:00
kfraser@localhost.localdomain 043158a97f x86/PAE linux: don't restrict upper half of page table entries to 3 bits
when dumping the page table contents during an oops.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-01-12 14:48:06 +00:00
kfraser@localhost.localdomain e8922851b5 [LINUX] swiotlb: eliminate KM_SWIOTLB and thus the need for a Xen-specific kmap_types.h.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-01-12 10:31:16 +00:00
kfraser@localhost.localdomain 9f7105d6ac linux/i386: allow CONFIG_HIGHPTE on i386
While, as discussed, the performance impact of this option is
certainly higher than on native Linux, the option should not be
entirely disallowed if people want to sacrifice performance for less
lowmem pressure.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-01-12 10:28:54 +00:00
kfraser@localhost.localdomain 8f529b5deb [LINUX] x86/64: Sync pagetable management with i386 Xen code.
PUDs,PMDs,PTEs are all marked as ForeignPage so that they can be
grabbed from tlb_remove_page() at the appropriate time and freed in a
special way.

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-01-12 10:22:36 +00:00
Christian Limpach 7c6b36118d [linux] Remove some gratuitous differences with plain 2.6.16.33.
Signed-off-by: Christian Limpach <Christian.Limpach@xensource.com>
2007-01-04 13:05:09 +00:00
Steven Hand 1033df9144 Make sure we always have a sensible idle function; this fixes problems
booting dom0 on AMD introduced by -unstable cset 13213:bf25488db8eb.

Signed-off-by: Steven Hand <steven@xensource.com>
2007-01-04 10:58:01 +00:00
kfraser@localhost.localdomain 0550678b74 [LINUX] Implement the idle=poll option in the kernel when running on Xen.
This causes the kernel to use a polling loop rather than hypercall
down to block. I have found this useful to profile the amount of sleep
cycles when using xenoprof, there may be other uses.

Signed-off-by: Amitabha Roy <amitabha.roy@gmail.com>
2007-01-03 14:08:42 +00:00
kfraser@localhost.localdomain 576a882bc5 [LINUX] dma: Use swiotlb mask for coherent mappings too
The recent change to use a default DMA bit width of 30 bits (required
by chips like the b44) only converted the streaming DMA primitives.
The coherent mappings are still hard-coded to 31 bits.  This means
that b44 still doesn't work under Xen.

This patch makes the io_tlb_dma_bits variable global and uses it for
coherent memory mappings.

Thanks to Calvin Webster for providing a machine with a b44 and 2G
of memory I've been able to verify that this finally makes the b44
work under Xen.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>

Rename 'io_tlb_dma_bits' to the more correct 'dma_bits'. This also
affects the name of the boot parameter, which is now 'dma_bits='.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-12-20 11:21:04 +00:00
awilliam@xenbuild2.aw 5fb6147b15 [IA64] evtchn_callback fix and clean
Since we had changed to use event callback to deliver interrupts,

1. The pending_interruption is changed to pending_event.

2. get_ivr, set_tpr, get_trp and set_eoi are not used or only used
   in the initialization phase. There is no need to write this code
   in assembly.  This code is deleted.

3. hyper_ssm_i needs to be rewritten to jump to entchn_callback_handler
   instead of iva+0x3000 interrupt handler.  I will do this later.

Signed-off-by: Anthony Xu  <anthony.xu@intel.com>
2006-12-18 10:20:34 -07:00
awilliam@xenbuild2.aw 5a170ea5d6 merge with xen-unstable.hg 2006-12-14 08:57:36 -07:00
awilliam@xenbuild2.aw 318b012682 [IA64][BUILD] XEN_XKBUFF needs to depend on NET
Signed-Off-By: Simon Horman <horms@verge.net.au>
2006-12-14 08:54:54 -07:00
kfraser@localhost.localdomain b4439be6e5 [LINUX] Fix seg-fixup warning.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-12-14 11:09:27 +00:00
awilliam@xenbuild2.aw 0741834153 merge with xen-unstable.hg 2006-12-08 09:09:18 -07:00
Ian Campbell c720eb6ab7 [LINUX] Kexec: Remove remainder of kexec-generic.patch
Rename xen_machine_kexec() to just machine_kexec() and only compile in
the Xen or native version as appropriate.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-12-08 11:47:09 +00:00
Ian Campbell 69f0c953b4 [LINUX] Kexec: Reapply kexec patches to sparse tree.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-12-08 11:47:09 +00:00
Ian Campbell 24a9aad534 [LINUX] Kexec: add kexec files to sparse tree.
Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-12-08 11:47:09 +00:00
kfraser@localhost.localdomain a8b5e33ac8 [LINUX] Fail gracefully if we run out of spare IRQs.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-12-07 16:43:08 +00:00
awilliam@xenbuild2.aw c8f8d49382 [IA64] implement free_irq_vector() paravirtualization
This avoids a double free error message since dom0 isn't
actually using the ia64_vector_mask.

Signed-off-by: Akio Takebe <takebe_akio@jp.fujitsu.com>
2006-12-07 04:15:54 -07:00
awilliam@xenbuild.aw 0013d074cd [IA64] changed foreign domain page mapping semantic.
x86 foreign HVM domain page mapping semantic was changed to use gmfn
instead mfn.  It applies to domains with auto_translated_mode enabled,
and all ia64 domains enable auto_translated_mode.  This patch changes
ia64 foreign domain page mapping to use gmfn and fixes ia64 domU buidler.
However this patch breaks domain save/restore/dump-core.
They should also be fixed-up

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-12-05 10:59:32 -07:00
awilliam@xenbuild.aw bd4a1b45bf [IA64] paraviatualize /dev/mem to enable X.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-12-04 08:44:57 -07:00
awilliam@xenbuild.aw 793cb77839 merge with xen-unstable.hg 2006-12-04 08:24:41 -07:00
awilliam@xenbuild.aw d8b39738aa [IA64] Change to new interrupt deliver mechanism.
Signed-off-by: Anthony Xu <anthony.xu@intel.com>
2006-12-01 11:40:57 -07:00
Steven Smith 3c78f2e5d7 [LINUX] The removal of the console_use_vt hack was premature: it's still
required if CONFIG_VT is enabled but the domain isn't currently
configured to use the PV framebuffer.  Put it back in, in a slightly
more palatable form.

Signed-off-by: Steven Smith <sos22@cam.ac.uk>
2006-12-01 11:52:33 +00:00
Steven Smith a5ae44fcdf This is Anthony Liguori's virtual framebuffer forward ported and
extensively hacked based on feedback from xen-devel.

Its architecture is comparable to the common split device driver
architecture: xenfb and xenkbd modules serve as frontend in domU, and
the user space vncfb or sdlfb process serves as backend in dom0.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2006-12-01 09:48:32 +00:00
awilliam@xenbuild.aw 96403247eb [IA64] Fix sparse tree xenoprof/perfmon/oprofile build dependencies
Compile xenoprof perfmon related hypercall even when
CONFIG_PERFMON, CONFIG_OPROFILE, CONFIG_OPROFILE_MODULE are disabled.
They should be compiled in vmlinux unconditionally because they
might be called by other modules in theory.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-11-30 15:57:15 -07:00
Ian Campbell 6fc8621b96 [XEN] Kexec / Kdump: x86_64 specific code
This patch contains the x86_64 implementation of Kexec / Kdump for Xen.

Signed-Off-By: Magnus Damm <magnus@valinux.co.jp>
Signed-Off-By: Simon Horman <horms@verge.net.au>
2006-11-30 12:38:51 +00:00
Ian Campbell 92491dae02 [XEN] Kexec / Kdump: x86_32 specific code
This patch contains the x86_32 implementation of Kexec / Kdump for Xen.

Signed-Off-By: Magnus Damm <magnus@valinux.co.jp>
Signed-Off-By: Simon Horman <horms@verge.net.au>
2006-11-30 12:38:51 +00:00
awilliam@xenbuild.aw ac0269d27c merge with xen-unstable.hg 2006-11-29 11:07:28 -07:00
awilliam@xenbuild.aw 1691a97d3b [IA64] remove undefined debugging line
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-11-29 09:16:46 -07:00
kfraser@localhost.localdomain 74517de104 [LINUX] Avoid triggering the softlockup BUG when offline for too long.
After being offline for a long time, the softlockup  watchdog triggers
a BUG() on our faces. This is expected, as in fact, we spent more than
a fixed 10*HZ amount of time without touching the watchdog.

However, by inspecting the contents of stolen inside timer irq handler,
we can gain awareness of the fact, and do better than that.

Signed-off-by: Glauber de Oliveira Costa <gcosta@redhat.com>
2006-11-29 12:16:59 +00:00
awilliam@xenbuild.aw 0d2fbb9506 [IA64] xenoprof linux/ia64 part
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-11-28 22:54:24 -07:00
awilliam@xenbuild.aw 0ef613d426 [IA64] import perfmon, oprofile related files from linux to linux-sparse
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>

Updated to 2.6.16.33

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-11-28 11:19:40 -07:00
awilliam@xenbuild.aw ec489b8435 merge with xen-unstable.hg 2006-11-28 10:37:36 -07:00
kfraser@localhost.localdomain b2cb3ada56 Allow DMA address width to be overridden with boot parameters:
In Xen: dma_bits=28 (for example)
In Linux: swiotlb_bits=28 (for example)

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-11-28 17:15:22 +00:00
kfraser@localhost.localdomain b63e5446b8 [XEN] Cleanups to phys/mach address handling.
1. Balloon driver does not need to set M2P entry.
    This is done by the populate_physmap hypercall.

 2. Xen now translates foreign mappings from GMFN->MFN.
    Tools are simplified because of this.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-11-27 14:20:44 +00:00
Ian Campbell 9276d7173d [LINUX] Update to Linux 2.6.16.31
Updated linux-2.6-xen-sparse/arch/x86_64/kernel/acpi/Makefile

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-11-27 13:50:02 +00:00
awilliam@xenbuild.aw d28132e9b9 [IA64] fix paravirtualization of clone2() system call.
If audit is enabled or the child process is ptraced,
non-paravirtualized code path is executed.
Thus paravirtualized ifs is left unmodifed so that the child process
crashes after clone2().
paravirtualize ia64_ret_from_clone() to fix it.
 
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-11-22 10:10:38 -07:00
awilliam@xenbuild.aw 5fa13648a8 merge with xen-unstable.hg 2006-11-20 13:11:15 -07:00
awilliam@xenbuild.aw f9b170e324 [IA64] Grantcopy added to xcom_mini for netback module
This patch adds grantcopy to xcom_mini allowing netback to
work as a module.

Signed-off-by: Tsunehisa Doi <Doi.Tsunehisa@jp.fujitsu.com>
Signed-off-by: Naoki Takayama <takayama.naoki@jp.fujitsu.com>
Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com>
2006-11-20 10:10:28 -07:00
kfraser@localhost.localdomain d41363d448 [XENOPROFILE] Make xenoprof arch-generic with dynamic mapping/unmapping xenoprof
buffer support and auto translated mode support.
renamed xenoprof_get_buffer::buf_maddr, xenoprof_passive::buf_maddr to
xenoprof_get_buffer::buf_gmaddr, xenoprof_passive::buf_gmaddr
to support auto translated mode. With auto translated mode enabled,
it is gmaddr, not maddr.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>

Simplify the share function.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-11-22 10:09:28 +00:00
kfraser@localhost.localdomain 17bdaf4a74 [XENOPROF] Make xenoprof of linux side arch generic with some bug fixes.
Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-11-22 09:50:37 +00:00
kfraser@localhost.localdomain a832c0ef5b [XENOPROFILE] Split linux-2.6-xen-sparse/arch/i386/oprofile/xenoprof.c into
linux-2.6-xen-sparse/drivers/xen/xenoprof/xenoprofile.c
without code changes except slight adjustment to compile.

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
2006-11-22 09:49:55 +00:00
kfraser@localhost.localdomain 9713e41894 [LINUX] Add process profiling hook to timer ISR.
Signed-off-by: Rik van Riel <riel@redhat.com>
2006-11-17 10:32:57 +00:00
awilliam@xenbuild.aw 11a395e553 Merge in MCA tree 2006-11-15 12:02:09 -07:00
kfraser@localhost.localdomain cee7ce97f7 Clean up the DMADOM physical upper limit handling to properly honour
settings in config.h.

Set the upper limit for DMADOM and swiotlb allocations to be 30 bits
(1G) instead of 31 bits, to allow the b44 NIC driver to work.

Signed-off-by: Stephen Tweedie <sct@redhat.com>
2006-11-28 16:41:45 +00:00
awilliam@xenbuild.aw 4c40652f1d merge with xen-unstable.hg 2006-11-14 14:59:37 -07:00
kfraser@localhost.localdomain 7186363e84 [LINUX] x86/64: Fix backward compatibility to Xen 3.0.2.
This requires us to explicitly specify _PAGE_USER for kernel mappings.
Original patch by Jan Beulich <jbeulich@novell.com> and Gerd Hoffmann.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-11-14 17:00:05 +00:00
awilliam@xenbuild.aw eb5a644ce3 [IA64] Fix xencomm for xm mem-set command
This patch saves and restores the hypercall parameter within xencomm.

Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2006-11-13 11:24:30 -07:00