[PATCH 12/15] bugs/riscv: Concatenate 'cond_str' with '__FILE__' in __BUG_FLAGS(), to extend WARN_ON/BUG_ON output
Ingo Molnar
mingo at kernel.org
Fri May 16 08:45:41 PDT 2025
* Alexandre Ghiti <alex at ghiti.fr> wrote:
> Hi Ingo,
>
> On 15/05/2025 14:46, Ingo Molnar wrote:
> > Extend WARN_ON and BUG_ON style output from:
> >
> > WARNING: CPU: 0 PID: 0 at kernel/sched/core.c:8511 sched_init+0x20/0x410
> >
> > to:
> >
> > WARNING: CPU: 0 PID: 0 at [idx < 0 && ptr] kernel/sched/core.c:8511 sched_init+0x20/0x410
> >
> > Note that the output will be further reorganized later in this series.
> >
> > Signed-off-by: Ingo Molnar <mingo at kernel.org>
> > Cc: Paul Walmsley <paul.walmsley at sifive.com>
> > Cc: Palmer Dabbelt <palmer at dabbelt.com>
> > Cc: Albert Ou <aou at eecs.berkeley.edu>
> > Cc: Alexandre Ghiti <alex at ghiti.fr>
> > Cc: linux-riscv at lists.infradead.org
> > Cc: <linux-arch at vger.kernel.org>
> > ---
> > arch/riscv/include/asm/bug.h | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/arch/riscv/include/asm/bug.h b/arch/riscv/include/asm/bug.h
> > index feaf456d465b..da9b8e83934d 100644
> > --- a/arch/riscv/include/asm/bug.h
> > +++ b/arch/riscv/include/asm/bug.h
> > @@ -61,7 +61,7 @@ do { \
> > ".org 2b + %3\n\t" \
> > ".popsection" \
> > : \
> > - : "i" (__FILE__), "i" (__LINE__), \
> > + : "i" (WARN_CONDITION_STR(cond_str) __FILE__), "i" (__LINE__), \
> > "i" (flags), \
> > "i" (sizeof(struct bug_entry))); \
> > } while (0)
>
> I have added a dummy WARN_ON_ONCE(pgtable_l5_enabled == true) and I get the
> following output:
>
> WARNING: [pgtable_l5_enabled == true] arch/riscv/kernel/setup.c:364 at
> setup_arch+0x6c4/0x704, CPU#0: swapper/0
>
> So you can add for riscv:
>
> Tested-by: Alexandre Ghiti <alexghiti at rivosinc.com> # riscv
Thanks, I've updated the tags section of the riscv patches.
BTW., if you tried the WIP.core/bugs tree it has a final (and silly)
WARN_ON_ONCE()-testing commit as well:
af0503e693cf ("bugs/core: Test WARN_ON_ONCE()")
+ WARN_ON_ONCE(ptr == 0 && 1);
:-)
Thanks,
Ingo
More information about the linux-riscv
mailing list