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()

 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();
 
-- 
2.47.3


Reply via email to