Message ID | 20250312174513.4075066-9-andrew.cooper3@citrix.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | xen: Untangle mm.h | expand |
diff --git a/xen/arch/arm/include/asm/arm32/flushtlb.h b/xen/arch/arm/include/asm/arm32/flushtlb.h index 61c25a318998..510eb649a5c6 100644 --- a/xen/arch/arm/include/asm/arm32/flushtlb.h +++ b/xen/arch/arm/include/asm/arm32/flushtlb.h @@ -1,6 +1,8 @@ #ifndef __ASM_ARM_ARM32_FLUSHTLB_H__ #define __ASM_ARM_ARM32_FLUSHTLB_H__ +#include <asm/arm32/sysregs.h> + /* * Every invalidation operation use the following patterns: * diff --git a/xen/arch/arm/include/asm/arm64/flushtlb.h b/xen/arch/arm/include/asm/arm64/flushtlb.h index 45642201d147..b98c8d14a78f 100644 --- a/xen/arch/arm/include/asm/arm64/flushtlb.h +++ b/xen/arch/arm/include/asm/arm64/flushtlb.h @@ -1,6 +1,8 @@ #ifndef __ASM_ARM_ARM64_FLUSHTLB_H__ #define __ASM_ARM_ARM64_FLUSHTLB_H__ +#include <asm/alternative.h> + /* * Every invalidation operation use the following patterns: * diff --git a/xen/arch/arm/include/asm/fixmap.h b/xen/arch/arm/include/asm/fixmap.h index 0cb5d54d1c74..68d82d3d4ea2 100644 --- a/xen/arch/arm/include/asm/fixmap.h +++ b/xen/arch/arm/include/asm/fixmap.h @@ -22,6 +22,8 @@ #ifndef __ASSEMBLY__ +#include <asm/lpae.h> + /* * Direct access to xen_fixmap[] should only happen when {set, * clear}_fixmap() is unusable (e.g. where we would end up to diff --git a/xen/arch/arm/include/asm/pmap.h b/xen/arch/arm/include/asm/pmap.h index bca3381796f3..1162e8a6e4d2 100644 --- a/xen/arch/arm/include/asm/pmap.h +++ b/xen/arch/arm/include/asm/pmap.h @@ -4,6 +4,7 @@ #include <xen/mm.h> #include <asm/fixmap.h> +#include <asm/flushtlb.h> static inline void arch_pmap_map(unsigned int slot, mfn_t mfn) { diff --git a/xen/arch/arm/mmu/domain_page.c b/xen/arch/arm/mmu/domain_page.c index 3a43601623f0..850214925a3b 100644 --- a/xen/arch/arm/mmu/domain_page.c +++ b/xen/arch/arm/mmu/domain_page.c @@ -3,6 +3,8 @@ #include <xen/pmap.h> #include <xen/vmap.h> +#include <asm/flushtlb.h> + /* Override macros from asm/page.h to make them work with mfn_t */ #undef virt_to_mfn #define virt_to_mfn(va) _mfn(__virt_to_mfn(va)) diff --git a/xen/arch/arm/mmu/pt.c b/xen/arch/arm/mmu/pt.c index da28d669e796..16c73da853e6 100644 --- a/xen/arch/arm/mmu/pt.c +++ b/xen/arch/arm/mmu/pt.c @@ -13,6 +13,7 @@ #include <asm/current.h> #include <asm/fixmap.h> +#include <asm/flushtlb.h> #ifdef NDEBUG static inline void diff --git a/xen/arch/arm/mmu/setup.c b/xen/arch/arm/mmu/setup.c index f6119ccacf15..64a06e30e8fb 100644 --- a/xen/arch/arm/mmu/setup.c +++ b/xen/arch/arm/mmu/setup.c @@ -13,6 +13,7 @@ #include <xen/vmap.h> #include <asm/fixmap.h> +#include <asm/flushtlb.h> #include <asm/setup.h> /* Override macros from asm/page.h to make them work with mfn_t */ diff --git a/xen/arch/arm/traps.c b/xen/arch/arm/traps.c index 445e7378dd79..52f267fb11f8 100644 --- a/xen/arch/arm/traps.c +++ b/xen/arch/arm/traps.c @@ -34,6 +34,7 @@ #include <asm/cpuerrata.h> #include <asm/cpufeature.h> #include <asm/event.h> +#include <asm/flushtlb.h> #include <asm/hsr.h> #include <asm/mem_access.h> #include <asm/mmio.h> diff --git a/xen/include/xen/mm.h b/xen/include/xen/mm.h index 154e649db9e4..27e420e302d8 100644 --- a/xen/include/xen/mm.h +++ b/xen/include/xen/mm.h @@ -587,7 +587,7 @@ void destroy_ring_for_helper(void **_va, struct page_info *page); /* Return the upper bound of MFNs, including hotplug memory. */ unsigned long get_upper_mfn_bound(void); -#if defined(CONFIG_X86) || defined(CONFIG_ARM) +#if defined(CONFIG_X86) #include <asm/flushtlb.h> #endif
A number of files pick up flushtlb.h transitively through mm.h, while the flushtlb.h hierachy themselves aren't even self-sufficient. Address all of these, and exclude flushtlb.h from mm.h Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> --- CC: Anthony PERARD <anthony.perard@vates.tech> CC: Michal Orzel <michal.orzel@amd.com> CC: Jan Beulich <jbeulich@suse.com> CC: Julien Grall <julien@xen.org> CC: Roger Pau Monné <roger.pau@citrix.com> CC: Stefano Stabellini <sstabellini@kernel.org> CC: Volodymyr Babchuk <Volodymyr_Babchuk@epam.com> CC: Bertrand Marquis <bertrand.marquis@arm.com> CC: Oleksii Kurochko <oleksii.kurochko@gmail.com> CC: Shawn Anastasio <sanastasio@raptorengineering.com> --- xen/arch/arm/include/asm/arm32/flushtlb.h | 2 ++ xen/arch/arm/include/asm/arm64/flushtlb.h | 2 ++ xen/arch/arm/include/asm/fixmap.h | 2 ++ xen/arch/arm/include/asm/pmap.h | 1 + xen/arch/arm/mmu/domain_page.c | 2 ++ xen/arch/arm/mmu/pt.c | 1 + xen/arch/arm/mmu/setup.c | 1 + xen/arch/arm/traps.c | 1 + xen/include/xen/mm.h | 2 +- 9 files changed, 13 insertions(+), 1 deletion(-)