Re: [PATCH] arch/mips/kernel/traps: add CONFIG_MIPS_FP_SUPPORT when using handle_fpe

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 26 Apr 2022, Stephen Zhang wrote:

> diff --git a/arch/mips/kernel/traps.c b/arch/mips/kernel/traps.c
> index 246c6a6b0261..ef9792261f91 100644
> --- a/arch/mips/kernel/traps.c
> +++ b/arch/mips/kernel/traps.c
> @@ -90,7 +90,9 @@ extern asmlinkage void handle_cpu(void);
>  extern asmlinkage void handle_ov(void);
>  extern asmlinkage void handle_tr(void);
>  extern asmlinkage void handle_msa_fpe(void);
> +#ifdef CONFIG_MIPS_FP_SUPPORT
>  extern asmlinkage void handle_fpe(void);
> +#endif

 No need to conditionalise declarations ever.

> @@ -2489,8 +2491,10 @@ void __init trap_init(void)
>  	if (board_nmi_handler_setup)
>  		board_nmi_handler_setup();
>  
> +#ifdef CONFIG_MIPS_FP_SUPPORT
>  	if (cpu_has_fpu && !cpu_has_nofpuex)
>  		set_except_vector(EXCCODE_FPE, handle_fpe);
> +#endif

 No need to conditionalise this either, because `cpu_has_fpu' is forced 0 
(in arch/mips/include/asm/cpu-features.h) if !CONFIG_MIPS_FP_SUPPORT.  So 
this code translates to:

 if (0 && !0)
  set_except_vector(15, handle_fpe);

in the preprocessor if CONFIG_MIPS_FP_SUPPORT is unset and is optimised 
away.  Otherwise it should be written as:

	if (IS_ENABLED(CONFIG_MIPS_FP_SUPPORT) && ...

so as not to clutter C code with #ifdef, as per our coding style.

  Maciej



[Index of Archives]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux