2023-01-12 19:44:44

by Elliot Berman

[permalink] [raw]
Subject: [PATCH] arm64: smccc: Include alternative-macros.h

Fix build error when CONFIG_ARM64_SVE is selected and
asm/alternative-macros.h wasn't implicitly included by another header.

./include/linux/arm-smccc.h:387:25: error: expected string literal before `ALTERNATIVE'
387 | #define SMCCC_SVE_CHECK ALTERNATIVE("nop \n", "bl __arm_smccc_sve_check \n", \

Signed-off-by: Elliot Berman <[email protected]>
---
include/linux/arm-smccc.h | 1 +
1 file changed, 1 insertion(+)

diff --git a/include/linux/arm-smccc.h b/include/linux/arm-smccc.h
index 220c8c60e021..6a627cdbbdec 100644
--- a/include/linux/arm-smccc.h
+++ b/include/linux/arm-smccc.h
@@ -383,6 +383,7 @@ asmlinkage void __arm_smccc_hvc(unsigned long a0, unsigned long a1,

/* nVHE hypervisor doesn't have a current thread so needs separate checks */
#if defined(CONFIG_ARM64_SVE) && !defined(__KVM_NVHE_HYPERVISOR__)
+#include <asm/alternative-macros.h>

#define SMCCC_SVE_CHECK ALTERNATIVE("nop \n", "bl __arm_smccc_sve_check \n", \
ARM64_SVE)

base-commit: 68a63a412d18bd2e2577c8928139f92541afa7a6
--
2.39.0


2023-01-13 10:28:41

by Will Deacon

[permalink] [raw]
Subject: Re: [PATCH] arm64: smccc: Include alternative-macros.h

On Thu, Jan 12, 2023 at 10:25:47AM -0800, Elliot Berman wrote:
> Fix build error when CONFIG_ARM64_SVE is selected and
> asm/alternative-macros.h wasn't implicitly included by another header.
>
> ./include/linux/arm-smccc.h:387:25: error: expected string literal before `ALTERNATIVE'
> 387 | #define SMCCC_SVE_CHECK ALTERNATIVE("nop \n", "bl __arm_smccc_sve_check \n", \
>
> Signed-off-by: Elliot Berman <[email protected]>
> ---
> include/linux/arm-smccc.h | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/include/linux/arm-smccc.h b/include/linux/arm-smccc.h
> index 220c8c60e021..6a627cdbbdec 100644
> --- a/include/linux/arm-smccc.h
> +++ b/include/linux/arm-smccc.h
> @@ -383,6 +383,7 @@ asmlinkage void __arm_smccc_hvc(unsigned long a0, unsigned long a1,
>
> /* nVHE hypervisor doesn't have a current thread so needs separate checks */
> #if defined(CONFIG_ARM64_SVE) && !defined(__KVM_NVHE_HYPERVISOR__)
> +#include <asm/alternative-macros.h>
>
> #define SMCCC_SVE_CHECK ALTERNATIVE("nop \n", "bl __arm_smccc_sve_check \n", \
> ARM64_SVE)
>
> base-commit: 68a63a412d18bd2e2577c8928139f92541afa7a6

Acked-by: Will Deacon <[email protected]>

Will