[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [PATCH 0/12] direct-map DomUs
Hi all, This series adds support for 1:1 mapping (guest physical == physical) the memory of dom0less domUs. The memory ranges assigned to a domU can be explicitly chosen by the user at boot time. This is desirable in cases where an IOMMU is not present in the system, or it cannot be used. For instance, it might not be usable because it doesn't cover a specific device, or because it doesn't have enough bandwidth, or because it adds too much latency. In these cases, the user should use a MPU to protect the memory in the system (e.g. the Xilinx XMPU), configuring it with the chosen address ranges. Cheers, Stefano The following changes since commit 7372466b21c3b6c96bb7a52754e432bac883a1e3: x86/mem_sharing: Fix build with !CONFIG_XSM (2020-04-10 15:20:10 +0100) are available in the Git repository at: http://xenbits.xenproject.org/git-http/people/sstabellini/xen-unstable.git direct-map-1 for you to fetch changes up to 43503720ab6851a28a66fdd067f592d5354ae83a: xen/arm: call iomem_permit_access for passthrough devices (2020-04-14 17:42:21 -0700) ---------------------------------------------------------------- Stefano Stabellini (12): xen: introduce xen_dom_flags xen/arm: introduce arch_xen_dom_flags and direct_map xen/arm: introduce 1:1 mapping for domUs xen: split alloc_heap_pages in two halves for reusability xen: introduce reserve_heap_pages xen/arm: reserve 1:1 memory for direct_map domUs xen/arm: new vgic: rename vgic_cpu/dist_base to c/dbase xen/arm: if is_domain_direct_mapped use native addresses for GICv2 xen/arm: if is_domain_direct_mapped use native addresses for GICv3 xen/arm: if is_domain_direct_mapped use native UART address for vPL011 xen/arm: if xen_force don't try to setup the IOMMU xen/arm: call iomem_permit_access for passthrough devices docs/misc/arm/device-tree/booting.txt | 13 +++ docs/misc/arm/passthrough-noiommu.txt | 35 ++++++++ xen/arch/arm/domain.c | 4 +- xen/arch/arm/domain_build.c | 141 ++++++++++++++++++++++++++---- xen/arch/arm/setup.c | 3 +- xen/arch/arm/vgic-v2.c | 12 +-- xen/arch/arm/vgic-v3.c | 18 +++- xen/arch/arm/vgic/vgic-init.c | 4 +- xen/arch/arm/vgic/vgic-v2.c | 18 ++-- xen/arch/arm/vpl011.c | 12 ++- xen/arch/x86/domain.c | 3 +- xen/arch/x86/setup.c | 3 +- xen/common/domain.c | 13 +-- xen/common/domctl.c | 3 +- xen/common/page_alloc.c | 158 +++++++++++++++++++++++++--------- xen/common/sched/core.c | 3 +- xen/include/asm-arm/domain.h | 10 ++- xen/include/asm-arm/new_vgic.h | 4 +- xen/include/asm-arm/vgic.h | 1 + xen/include/asm-x86/domain.h | 2 + xen/include/xen/domain.h | 8 +- xen/include/xen/mm.h | 2 + xen/include/xen/sched.h | 2 +- 23 files changed, 373 insertions(+), 99 deletions(-) create mode 100644 docs/misc/arm/passthrough-noiommu.txt
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |