mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2026-06-21 15:43:21 +02:00
bbc960d009
Add unit tests to verify that warning backtrace suppression works. Tests cover both API forms: - Scoped: kunit_warning_suppress() with in-block count verification and post-block inactivity check. - Direct functions: kunit_start/end_suppress_warning() with sequential independent suppression blocks and per-block counts. Furthermore, tests verify incremental warning counting, that kunit_has_active_suppress_warning() transitions correctly around suppression boundaries, and that suppression active in the test kthread does not leak to a separate kthread. If backtrace suppression does _not_ work, the unit tests will likely trigger unsuppressed backtraces, which should actually help to get the affected architectures / platforms fixed. Link: https://lore.kernel.org/r/20260514-kunit_add_support-v11-2-b36a530a6d8f@redhat.com Tested-by: Linux Kernel Functional Testing <lkft@linaro.org> Acked-by: Dan Carpenter <dan.carpenter@linaro.org> Reviewed-by: Kees Cook <keescook@chromium.org> Signed-off-by: Guenter Roeck <linux@roeck-us.net> Signed-off-by: Alessandro Carminati <acarmina@redhat.com> Reviewed-by: David Gow <david@davidgow.net> Signed-off-by: Albert Esteve <aesteve@redhat.com> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
34 lines
814 B
Makefile
34 lines
814 B
Makefile
obj-$(CONFIG_KUNIT) += kunit.o
|
|
|
|
kunit-objs += test.o \
|
|
resource.o \
|
|
user_alloc.o \
|
|
static_stub.o \
|
|
string-stream.o \
|
|
assert.o \
|
|
try-catch.o \
|
|
executor.o \
|
|
attributes.o \
|
|
device.o \
|
|
platform.o \
|
|
bug.o
|
|
|
|
ifeq ($(CONFIG_KUNIT_DEBUGFS),y)
|
|
kunit-objs += debugfs.o
|
|
endif
|
|
|
|
# KUnit 'hooks' are built-in even when KUnit is built as a module.
|
|
obj-$(if $(CONFIG_KUNIT),y) += hooks.o
|
|
|
|
obj-$(CONFIG_KUNIT_TEST) += kunit-test.o
|
|
obj-$(CONFIG_KUNIT_TEST) += platform-test.o
|
|
obj-$(CONFIG_KUNIT_TEST) += backtrace-suppression-test.o
|
|
|
|
# string-stream-test compiles built-in only.
|
|
ifeq ($(CONFIG_KUNIT_TEST),y)
|
|
obj-$(CONFIG_KUNIT_TEST) += string-stream-test.o
|
|
obj-$(CONFIG_KUNIT_TEST) += assert_test.o
|
|
endif
|
|
|
|
obj-$(CONFIG_KUNIT_EXAMPLE_TEST) += kunit-example-test.o
|