Hi all,
Arm never supported a M2P yet there are some helpers implemented to deal with
the common code. However, the implementation of mfn_to_gmfn is completely
bogus.
This series aims to properly disable the M2P on Arm. See patch #8 for the
rationale regarding the lack of M2P on Arm.
While looking at the code, I also continued to convert some code to use
typesafe MFN/GFN.
Cheers,
Julien Grall (14):
xen/x86: Make mfn_to_gfn typesafe
xen/x86: Use mfn_to_gfn rather than mfn_to_gmfn
xen/grant-table: Make arch specific macros typesafe
xen: Convert hotplug page function to use typesafe MFN
xen: Convert is_xen_fixed_mfn to use typesafe MFN
xen: Convert is_xen_heap_mfn to use typesafe MFN
xen: Introduce HAS_M2P config and use to protect mfn_to_gmfn call
xen: Remove mfn_to_gmfn macro
xen/x86: mm: Re-implement set_gpfn_from_mfn() as a static inline
function
xen/x86: pv: Convert update_intpte() to use typesafe MFN
xen/x86: p2m: Remove duplicate error message in p2m_pt_audit_p2m()
xen/x86: p2m: Rework printk format in audit_p2m()
xen/mm: Convert {s, g}et_gpfn_from_mfn() to use typesafe MFN
xen/mm: Provide dummy M2P-related helpers when !CONFIG_HAVE_M2P
xen/arch/x86/Kconfig | 1 +
xen/arch/x86/cpu/mcheck/mcaction.c | 20 +++----
xen/arch/x86/domain.c | 34 ++++++------
xen/arch/x86/mm.c | 102 ++++++++++++++++++------------------
xen/arch/x86/mm/mem_sharing.c | 19 +++----
xen/arch/x86/mm/p2m-pod.c | 4 +-
xen/arch/x86/mm/p2m-pt.c | 35 ++++++-------
xen/arch/x86/mm/p2m.c | 71 +++++++++++++------------
xen/arch/x86/mm/paging.c | 4 +-
xen/arch/x86/mm/shadow/common.c | 31 ++++++-----
xen/arch/x86/mm/shadow/multi.c | 6 +--
xen/arch/x86/pv/dom0_build.c | 6 +--
xen/arch/x86/pv/emul-priv-op.c | 4 +-
xen/arch/x86/pv/grant_table.c | 6 +--
xen/arch/x86/pv/mm.h | 7 ++-
xen/arch/x86/pv/ro-page-fault.c | 2 +-
xen/arch/x86/tboot.c | 2 +-
xen/arch/x86/x86_64/traps.c | 41 ++++++++-------
xen/common/Kconfig | 3 ++
xen/common/domctl.c | 9 +++-
xen/common/grant_table.c | 4 +-
xen/common/memory.c | 4 ++
xen/common/page_alloc.c | 28 +++++-----
xen/common/sysctl.c | 14 ++---
xen/drivers/passthrough/iommu.c | 15 ++++--
xen/drivers/passthrough/x86/iommu.c | 16 +++---
xen/include/asm-arm/domain.h | 5 ++
xen/include/asm-arm/grant_table.h | 12 ++---
xen/include/asm-arm/mm.h | 25 +++------
xen/include/asm-x86/grant_table.h | 19 +++----
xen/include/asm-x86/mm.h | 46 ++++++++--------
xen/include/asm-x86/p2m.h | 6 +--
xen/include/public/domctl.h | 6 +++
xen/include/xen/domain.h | 12 +++++
xen/include/xen/mm.h | 20 +++++--
35 files changed, 344 insertions(+), 295 deletions(-)
--
2.11.0
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xenproject.org
https://lists.xenproject.org/mailman/listinfo/xen-devel