lib/kunit/Kconfig
Source file repositories/reference/linux-study-clean/lib/kunit/Kconfig
File Facts
- System
- Linux kernel
- Corpus path
lib/kunit/Kconfig- Extension
[no extension]- Size
- 5077 bytes
- Lines
- 146
- Domain
- Kernel Services
- Bucket
- lib
- Inferred role
- Kernel Services: build/configuration rule
- Status
- atlas-only
Why This File Exists
Shared kernel service surface used by multiple subsystems, including helpers, cryptography, virtualization support, and async I/O infrastructure.
- Shared kernel service surface used by multiple subsystems, including helpers, cryptography, virtualization support, and async I/O infrastructure.
Dependency Surface
- No C-style include directives detected by the generator.
Detected Declarations
- No top-level syscall, struct, function, initcall, or export declaration detected by the generator.
Annotated Snippet
#
# KUnit base configuration
#
menuconfig KUNIT
tristate "KUnit - Enable support for unit tests"
select GLOB
help
Enables support for kernel unit tests (KUnit), a lightweight unit
testing and mocking framework for the Linux kernel. These tests are
able to be run locally on a developer's workstation without a VM or
special hardware when using UML. Can also be used on most other
architectures. For more information, please see
Documentation/dev-tools/kunit/.
if KUNIT
config KUNIT_DEBUGFS
bool "KUnit - Enable /sys/kernel/debug/kunit debugfs representation"
depends on DEBUG_FS
default y
help
Enable debugfs representation for kunit. Currently this consists
of /sys/kernel/debug/kunit/<test_suite>/results files for each
test suite, which allow users to see results of the last test suite
run that occurred.
config KUNIT_FAULT_TEST
bool "Enable KUnit tests which print BUG stacktraces"
depends on KUNIT_TEST
depends on !UML
default !PANIC_ON_OOPS
help
Enables fault handling tests for the KUnit framework. These tests may
trigger a kernel BUG(), and the associated stack trace, even when they
pass. If this conflicts with your test infrastrcture (or is confusing
or annoying), they can be disabled by setting this to N.
config KUNIT_TEST
tristate "KUnit test for KUnit" if !KUNIT_ALL_TESTS
default KUNIT_ALL_TESTS
help
Enables the unit tests for the KUnit test framework. These tests test
the KUnit test framework itself; the tests are both written using
KUnit and test KUnit. This option should only be enabled for testing
purposes by developers interested in testing that KUnit works as
expected.
config KUNIT_EXAMPLE_TEST
tristate "Example test for KUnit" if !KUNIT_ALL_TESTS
default KUNIT_ALL_TESTS
help
Enables an example unit test that illustrates some of the basic
features of KUnit. This test only exists to help new users understand
what KUnit is and how it is used. Please refer to the example test
itself, lib/kunit/example-test.c, for more information. This option
is intended for curious hackers who would like to understand how to
use KUnit for kernel development.
config KUNIT_ALL_TESTS
tristate "All KUnit tests with satisfied dependencies"
help
Enables all KUnit tests, if they can be enabled.
KUnit tests run during boot and output the results to the debug log
in TAP format (http://testanything.org/). Only useful for kernel devs
running the KUnit test harness, and not intended for inclusion into a
production build.
For more information on KUnit and unit tests in general please refer
to the KUnit documentation in Documentation/dev-tools/kunit/.
Annotation
- Atlas domain: Kernel Services / lib.
- Implementation status: atlas-only.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.