Le 08/07/2026 à 5:54 PM, Bartosz Golaszewski a écrit : > CONFIG_KUNIT is a tristate symbol but the warning suppression code in > lib/bug.c is only built if it's built-in due to it using a plain #ifdef, > rendering warning suppressions broken for kunit build as loadable module. > > kunit_is_suppressed_warning() already has a stub for when kunit is > disabled so drop that guard entirely. > > Suggested-by: Albert Esteve <[email protected]> > Cc: [email protected] > Fixes: 85347718ab0d ("bug/kunit: Core support for suppressing warning > backtraces") > Signed-off-by: Bartosz Golaszewski <[email protected]> > --- > Changes in v2: > - drop the guard entirely instead of switching to IS_ENABLED() >
Thanks very much. Works well here. Reviewed-by: David Gow <[email protected]> Happy to take this via kselftest/kunit, but if you'd prefer it go in via mm-nonmm, that's fine too. Cheers, -- David > lib/bug.c | 2 -- > 1 file changed, 2 deletions(-) > > diff --git a/lib/bug.c b/lib/bug.c > index 292420f45811..7c1c2c27f58e 100644 > --- a/lib/bug.c > +++ b/lib/bug.c > @@ -219,14 +219,12 @@ static enum bug_trap_type __report_bug(struct bug_entry > *bug, unsigned long buga > no_cut = bug->flags & BUGFLAG_NO_CUT_HERE; > has_args = bug->flags & BUGFLAG_ARGS; > > -#ifdef CONFIG_KUNIT > /* > * Before the once logic so suppressed warnings do not consume > * the single-fire budget of WARN_ON_ONCE(). > */ > if (warning && kunit_is_suppressed_warning(true)) > return BUG_TRAP_TYPE_WARN; > -#endif > > disable_trace_on_warning(); >

