On 4/25/25 1:24 PM, Andrew Cooper wrote:
From: Shawn Anastasio<sanasta...@raptorengineering.com>
Signed-off-by: Shawn Anastasio<sanasta...@raptorengineering.com>
---
CC: Jan Beulich<jbeul...@suse.com>
CC: Roger Pau Monné<roger....@citrix.com>
CC: Stefano Stabellini<sstabell...@kernel.org>
CC: Julien Grall<jul...@xen.org>
CC: Volodymyr Babchuk<volodymyr_babc...@epam.com>
CC: Bertrand Marquis<bertrand.marq...@arm.com>
CC: Michal Orzel<michal.or...@amd.com>
CC: Oleksii Kurochko<oleksii.kuroc...@gmail.com>
CC: Shawn Anastasio<sanasta...@raptorengineering.com>
Possibly not for taking on it's own (might be better with the PPC
implemenation of map_pages_to_xen()).
Nevertheless, this patch alone now does trip:
diff --git a/xen/common/vmap.c b/xen/common/vmap.c
index d6991421f3f7..9552806dba39 100644
--- a/xen/common/vmap.c
+++ b/xen/common/vmap.c
@@ -228,6 +228,8 @@ void *__vmap(const mfn_t *mfn, unsigned int granularity,
void *va = vm_alloc(nr * granularity, align, type);
unsigned long cur = (unsigned long)va;
+ BUILD_BUG_ON(sizeof(pte_attr_t) != 4);
+
Could you please clarify what kind of changes should done in the case if
sizeof(pte_attr_t) == 8 (unsigned long)?
~ Oleksii
for ( ; va && nr--; ++mfn, cur += PAGE_SIZE * granularity )
{
if ( map_pages_to_xen(cur, *mfn, granularity, flags) )
in PPC builds only.
---
xen/arch/ppc/include/asm/mm-types.h | 7 +++++++
1 file changed, 7 insertions(+)
create mode 100644 xen/arch/ppc/include/asm/mm-types.h
diff --git a/xen/arch/ppc/include/asm/mm-types.h
b/xen/arch/ppc/include/asm/mm-types.h
new file mode 100644
index 000000000000..06a3af1c6eda
--- /dev/null
+++ b/xen/arch/ppc/include/asm/mm-types.h
@@ -0,0 +1,7 @@
+/* SPDX-License-Identifier: GPL-2.0-only */
+#ifndef PPC_MM_TYPES_H
+#define PPC_MM_TYPES_H
+
+typedef unsigned long pte_attr_t;
+
+#endif /* PPC_MM_TYPES_H */