2022-05-03 00:06:45

by Stephen Zhang

[permalink] [raw]
Subject: [PATCH v4] MIPS: adding a safety check for cpu_has_fpu

From: Shida Zhang <[email protected]>

There is a chance 'cpu_has_fpu' would still be overridden when the
CONFIG_MIPS_FP_SUPPORT configuration option has been disabled. So
add a safety check for 'cpu_has_fpu'.

Suggested-by: Maciej W. Rozycki <[email protected]>
Signed-off-by: Shida Zhang <[email protected]>
---
Changelog in v1 -> v2:
- Choose to redefine cpu_has_fpu to solve the problem silently.

Changelog in v2 -> v3:
- Choose to point out the error instead.

Changelog in v3 -> v4:
- Make the check work for 'nofpu' option.

arch/mips/include/asm/cpu-features.h | 3 +++
1 file changed, 3 insertions(+)

diff --git a/arch/mips/include/asm/cpu-features.h b/arch/mips/include/asm/cpu-features.h
index de8cb2ccb781..c0983130a44c 100644
--- a/arch/mips/include/asm/cpu-features.h
+++ b/arch/mips/include/asm/cpu-features.h
@@ -133,6 +133,9 @@
# define raw_cpu_has_fpu 0
# endif
#else
+# if cpu_has_fpu
+# error "Forcing `cpu_has_fpu' to non-zero is not supported"
+# endif
# define raw_cpu_has_fpu cpu_has_fpu
#endif
#ifndef cpu_has_32fpr
--
2.30.2


2022-05-07 05:34:39

by Thomas Bogendoerfer

[permalink] [raw]
Subject: Re: [PATCH v4] MIPS: adding a safety check for cpu_has_fpu

On Mon, May 02, 2022 at 11:20:02AM +0800, Stephen Zhang wrote:
> From: Shida Zhang <[email protected]>
>
> There is a chance 'cpu_has_fpu' would still be overridden when the
> CONFIG_MIPS_FP_SUPPORT configuration option has been disabled. So
> add a safety check for 'cpu_has_fpu'.
>
> Suggested-by: Maciej W. Rozycki <[email protected]>
> Signed-off-by: Shida Zhang <[email protected]>
> ---
> Changelog in v1 -> v2:
> - Choose to redefine cpu_has_fpu to solve the problem silently.
>
> Changelog in v2 -> v3:
> - Choose to point out the error instead.
>
> Changelog in v3 -> v4:
> - Make the check work for 'nofpu' option.
>
> arch/mips/include/asm/cpu-features.h | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/arch/mips/include/asm/cpu-features.h b/arch/mips/include/asm/cpu-features.h
> index de8cb2ccb781..c0983130a44c 100644
> --- a/arch/mips/include/asm/cpu-features.h
> +++ b/arch/mips/include/asm/cpu-features.h
> @@ -133,6 +133,9 @@
> # define raw_cpu_has_fpu 0
> # endif
> #else
> +# if cpu_has_fpu
> +# error "Forcing `cpu_has_fpu' to non-zero is not supported"
> +# endif
> # define raw_cpu_has_fpu cpu_has_fpu
> #endif
> #ifndef cpu_has_32fpr
> --
> 2.30.2

applied to mips-next.

Thomas.

--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]