[PATCH] arm64/sve: Make fpsimd_bind_task_to_cpu() static

Dave Martin Dave.Martin at arm.com
Mon Aug 2 08:52:38 PDT 2021


On Fri, Jul 30, 2021 at 05:58:46PM +0100, Mark Brown wrote:
> This function is not referenced outside fpsimd.c so can be static, making
> it that little bit easier to follow what is called from where.
> 
> Signed-off-by: Mark Brown <broonie at kernel.org>

Otherwise, this seems sensible, since by definition no code that isn't
switching task contexts should be calling this directly.

Rather makes me wonder
why it wasn't static in the first place.  This might have arisen from
splitting out a backend function from something else that isn't static,
or maybe I was trying to do this directy from KVM.  The notion of non-
task context that the KVM now uses is newer than the original SVE code.

Anyway, assuming you've grepped and tried to build with KVM at least
(so, defconfig):

Reviewed-by: Dave Martin <Dave.Martin at arm.com>


> ---
>  arch/arm64/include/asm/fpsimd.h | 1 -
>  arch/arm64/kernel/fpsimd.c      | 4 +++-
>  2 files changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/arch/arm64/include/asm/fpsimd.h b/arch/arm64/include/asm/fpsimd.h
> index c072161d5c65..9a62884183e5 100644
> --- a/arch/arm64/include/asm/fpsimd.h
> +++ b/arch/arm64/include/asm/fpsimd.h
> @@ -45,7 +45,6 @@ extern void fpsimd_preserve_current_state(void);
>  extern void fpsimd_restore_current_state(void);
>  extern void fpsimd_update_current_state(struct user_fpsimd_state const *state);
>  
> -extern void fpsimd_bind_task_to_cpu(void);
>  extern void fpsimd_bind_state_to_cpu(struct user_fpsimd_state *state,
>  				     void *sve_state, unsigned int sve_vl);
>  
> diff --git a/arch/arm64/kernel/fpsimd.c b/arch/arm64/kernel/fpsimd.c
> index e57b23f95284..eb8d972ad3d2 100644
> --- a/arch/arm64/kernel/fpsimd.c
> +++ b/arch/arm64/kernel/fpsimd.c
> @@ -162,6 +162,8 @@ extern void __percpu *efi_sve_state;
>  DEFINE_PER_CPU(bool, fpsimd_context_busy);
>  EXPORT_PER_CPU_SYMBOL(fpsimd_context_busy);
>  
> +static void fpsimd_bind_task_to_cpu(void);
> +
>  static void __get_cpu_fpsimd_context(void)
>  {
>  	bool busy = __this_cpu_xchg(fpsimd_context_busy, true);
> @@ -1112,7 +1114,7 @@ void fpsimd_signal_preserve_current_state(void)
>   * The caller must have ownership of the cpu FPSIMD context before calling
>   * this function.
>   */
> -void fpsimd_bind_task_to_cpu(void)
> +static void fpsimd_bind_task_to_cpu(void)
>  {
>  	struct fpsimd_last_state_struct *last =
>  		this_cpu_ptr(&fpsimd_last_state);
> -- 
> 2.20.1
> 
> 
> _______________________________________________
> linux-arm-kernel mailing list
> linux-arm-kernel at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/linux-arm-kernel



More information about the linux-arm-kernel mailing list