From: Stewart Hildebrand Date: Tue, 30 May 2023 09:59:33 +0000 (+0200) Subject: xen/arm: un-break build with clang X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=647377ea06b86d7356f5975e4780b9a6a81c188e;p=people%2Froyger%2Fxen.git xen/arm: un-break build with clang clang doesn't like extern with __attribute__((__used__)): ./arch/arm/include/asm/setup.h:171:8: error: 'used' attribute ignored [-Werror,-Wignored-attributes] extern DEFINE_BOOT_PAGE_TABLE(boot_pgtable); ^ ./arch/arm/include/asm/lpae.h:273:29: note: expanded from macro 'DEFINE_BOOT_PAGE_TABLE' lpae_t __aligned(PAGE_SIZE) __section(".data.page_aligned") \ ^ ./include/xen/compiler.h:71:27: note: expanded from macro '__section' #define __section(s) __used __attribute__((__section__(s))) ^ ./include/xen/compiler.h:104:39: note: expanded from macro '__used' #define __used __attribute__((__used__)) ^ Simplify the declarations by getting rid of the macro (and thus the __aligned/__section/__used attributes) in the header. No functional change intended as the macro/attributes are present in the respective definitions in xen/arch/arm/mm.c. Fixes: 1c78d76b67e1 ("xen/arm64: mm: Introduce helpers to prepare/enable/disable the identity mapping") Signed-off-by: Stewart Hildebrand Acked-by: Julien Grall --- diff --git a/xen/arch/arm/include/asm/setup.h b/xen/arch/arm/include/asm/setup.h index fe17cb0a4a..19dc637d55 100644 --- a/xen/arch/arm/include/asm/setup.h +++ b/xen/arch/arm/include/asm/setup.h @@ -168,13 +168,13 @@ u32 device_tree_get_u32(const void *fdt, int node, int map_range_to_domain(const struct dt_device_node *dev, uint64_t addr, uint64_t len, void *data); -extern DEFINE_BOOT_PAGE_TABLE(boot_pgtable); +extern lpae_t boot_pgtable[XEN_PT_LPAE_ENTRIES]; #ifdef CONFIG_ARM_64 -extern DEFINE_BOOT_PAGE_TABLE(boot_first_id); +extern lpae_t boot_first_id[XEN_PT_LPAE_ENTRIES]; #endif -extern DEFINE_BOOT_PAGE_TABLE(boot_second_id); -extern DEFINE_BOOT_PAGE_TABLE(boot_third_id); +extern lpae_t boot_second_id[XEN_PT_LPAE_ENTRIES]; +extern lpae_t boot_third_id[XEN_PT_LPAE_ENTRIES]; /* Find where Xen will be residing at runtime and return a PT entry */ lpae_t pte_of_xenaddr(vaddr_t);