linux/include/xen
Konrad Rzeszutek Wilk b097186fd2 swiotlb-xen: SWIOTLB library for Xen PV guest with PCI passthrough.
This patchset:

PV guests under Xen are running in an non-contiguous memory architecture.

When PCI pass-through is utilized, this necessitates an IOMMU for
translating bus (DMA) to virtual and vice-versa and also providing a
mechanism to have contiguous pages for device drivers operations (say DMA
operations).

Specifically, under Xen the Linux idea of pages is an illusion. It
assumes that pages start at zero and go up to the available memory. To
help with that, the Linux Xen MMU provides a lookup mechanism to
translate the page frame numbers (PFN) to machine frame numbers (MFN)
and vice-versa. The MFN are the "real" frame numbers. Furthermore
memory is not contiguous. Xen hypervisor stitches memory for guests
from different pools, which means there is no guarantee that PFN==MFN
and PFN+1==MFN+1. Lastly with Xen 4.0, pages (in debug mode) are
allocated in descending order (high to low), meaning the guest might
never get any MFN's under the 4GB mark.

Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Acked-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com>
Cc: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Cc: Albert Herranz <albert_herranz@yahoo.es>
Cc: Ian Campbell <Ian.Campbell@citrix.com>
2010-07-27 11:51:00 -04:00
..
interface xen: Add xen_create_contiguous_region 2010-06-07 15:37:53 -04:00
events.h xen: add irq_from_evtchn 2009-03-30 09:26:49 -07:00
evtchn.h xen: add /dev/xen/evtchn driver 2009-03-30 09:26:49 -07:00
features.h xen: Core Xen implementation 2007-07-18 08:47:42 -07:00
grant_table.h xen: implement save/restore 2008-05-27 10:11:38 +02:00
hvc-console.h xen64: fix !HVC_XEN build dependency 2008-07-16 11:06:48 +02:00
Kbuild xen: export ioctl headers to userspace 2009-03-30 09:26:49 -07:00
page.h xen: make include/xen/page.h portable moving those definitions under asm dir 2008-04-24 23:57:32 +02:00
swiotlb-xen.h swiotlb-xen: SWIOTLB library for Xen PV guest with PCI passthrough. 2010-07-27 11:51:00 -04:00
xen-ops.h xen: Add xen_create_contiguous_region 2010-06-07 15:37:53 -04:00
xen.h xen: move Xen-testing predicates to common header 2009-11-04 08:47:24 -08:00
xenbus.h include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
xencomm.h xen: import arch generic part of xencomm 2008-04-24 23:57:32 +02:00