There's nothing in that header which assembly files would need. Arrange for cpufeatureset.h to be included directly by cpufeature.h in that case, allowing respective guarding to be dropped
Signed-off-by: Jan Beulich <[email protected]> --- a/xen/arch/x86/include/asm/cpufeature.h +++ b/xen/arch/x86/include/asm/cpufeature.h @@ -10,7 +10,11 @@ #include <xen/const.h> #include <xen/macros.h> +#ifndef __ASSEMBLY__ #include <asm/cpuid.h> +#else +#include <asm/cpufeatureset.h> +#endif #define cpufeat_word(idx) ((idx) / 32) #define cpufeat_bit(idx) ((idx) % 32) --- a/xen/arch/x86/include/asm/cpuid.h +++ b/xen/arch/x86/include/asm/cpuid.h @@ -3,7 +3,6 @@ #include <asm/cpufeatureset.h> -#ifndef __ASSEMBLY__ #include <xen/types.h> #include <xen/kernel.h> #include <xen/percpu.h> @@ -50,7 +49,6 @@ struct cpuid_leaf; void guest_cpuid(const struct vcpu *v, uint32_t leaf, uint32_t subleaf, struct cpuid_leaf *res); -#endif /* __ASSEMBLY__ */ #endif /* !__X86_CPUID_H__ */ /*
