Message ID | 20220619031114.92060-1-jrdr.linux@gmail.com (mailing list archive) |
---|---|
State | Rejected, archived |
Headers | show |
Series | powerpc/interrupt: Put braces around empty body in an 'if' statement | expand |
Context | Check | Description |
---|---|---|
snowpatch_ozlabs/github-powerpc_ppctests | success | Successfully ran 10 jobs. |
snowpatch_ozlabs/github-powerpc_selftests | success | Successfully ran 10 jobs. |
snowpatch_ozlabs/github-powerpc_clang | success | Successfully ran 7 jobs. |
snowpatch_ozlabs/github-powerpc_sparse | success | Successfully ran 4 jobs. |
snowpatch_ozlabs/github-powerpc_kernel_qemu | success | Successfully ran 23 jobs. |
On 6/18/22 20:11, Souptick Joarder wrote: > From: "Souptick Joarder (HPE)" <jrdr.linux@gmail.com> > > 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@intel.com> > Signed-off-by: Souptick Joarder (HPE) <jrdr.linux@gmail.com> > --- > 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(); >
Le 19/06/2022 à 05:11, Souptick Joarder a écrit : > From: "Souptick Joarder (HPE)" <jrdr.linux@gmail.com> > > 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); > > Fix it by adding braces. There must be no braces for single 'if' statement , see https://docs.kernel.org/process/coding-style.html#placing-braces-and-spaces The problem is likely that CT_WARN_ON() is empty in some CONFIGs. You have to fix it, for instance by changing it to a "do { } while (0)" > > Reported-by: Kernel test robot <lkp@intel.com> > Signed-off-by: Souptick Joarder (HPE) <jrdr.linux@gmail.com> > --- > 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(); > > -- > 2.25.1 >
On Sun, Jun 19, 2022 at 11:13 AM Randy Dunlap <rdunlap@infradead.org> wrote: > > > > On 6/18/22 20:11, Souptick Joarder wrote: > > From: "Souptick Joarder (HPE)" <jrdr.linux@gmail.com> > > > > 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? Yes, CONFIG_CONTEXT_TRACKING_USER is not set. > > 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@intel.com> > > Signed-off-by: Souptick Joarder (HPE) <jrdr.linux@gmail.com> > > --- > > 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
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();