Re: [PATCH] powerpc/interrupt: Put braces around empty body in an 'if' statement

From: Randy Dunlap
Date: Sun Jun 19 2022 - 01:44:33 EST




On 6/18/22 20:11, Souptick Joarder wrote:
> From: "Souptick Joarder (HPE)" <jrdr.linux@xxxxxxxxx>
>
> Kernel test robot throws warning ->
>
> arch/powerpc/kernel/interrupt.c:
> In function 'interrupt_exit_kernel_prepare':
>
>>> arch/powerpc/kernel/interrupt.c:542:55: warning: suggest
> braces around empty body in an 'if' statement [-Wempty-body]
> 542 | CT_WARN_ON(ct_state() == CONTEXT_USER);

That must be when CONFIG_CONTEXT_TRACKING_USER is not set/enabled.
Can you confirm that?

Then the preferable fix would be in <linux/context_tracking.h>:

change
#define CT_WARN_ON(cond)

to either an empty do-while loop or a static inline function.

(adding Frederic to Cc:)

>
> Fix it by adding braces.
>
> Reported-by: Kernel test robot <lkp@xxxxxxxxx>
> Signed-off-by: Souptick Joarder (HPE) <jrdr.linux@xxxxxxxxx>
> ---
> arch/powerpc/kernel/interrupt.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/arch/powerpc/kernel/interrupt.c b/arch/powerpc/kernel/interrupt.c
> index 784ea3289c84..b8a918bab48f 100644
> --- a/arch/powerpc/kernel/interrupt.c
> +++ b/arch/powerpc/kernel/interrupt.c
> @@ -538,8 +538,9 @@ notrace unsigned long interrupt_exit_kernel_prepare(struct pt_regs *regs)
> * CT_WARN_ON comes here via program_check_exception,
> * so avoid recursion.
> */
> - if (TRAP(regs) != INTERRUPT_PROGRAM)
> + if (TRAP(regs) != INTERRUPT_PROGRAM) {
> CT_WARN_ON(ct_state() == CONTEXT_USER);
> + }
>
> kuap = kuap_get_and_assert_locked();
>

--
~Randy