diff options
| author | José Expósito <[email protected]> | 2025-03-07 09:00:58 +0000 |
|---|---|---|
| committer | Miguel Ojeda <[email protected]> | 2025-03-20 11:27:05 +0000 |
| commit | 100af58c8d5822750ef9ba65f5d5ea3367c669de (patch) | |
| tree | c593c1a68c9c193f5ac575260d8eb00006e02849 /drivers/gpu/drm/amd/amdgpu/atom.c | |
| parent | rust: macros: add macro to easily run KUnit tests (diff) | |
| download | kernel-100af58c8d5822750ef9ba65f5d5ea3367c669de.tar.gz kernel-100af58c8d5822750ef9ba65f5d5ea3367c669de.zip | |
rust: kunit: allow to know if we are in a test
In some cases, we need to call test-only code from outside the test
case, for example, to mock a function or a module.
In order to check whether we are in a test or not, we need to test if
`CONFIG_KUNIT` is set.
Unfortunately, we cannot rely only on this condition because:
- a test could be running in another thread,
- some distros compile KUnit in production kernels, so checking at runtime
that `current->kunit_test != NULL` is required.
Forturately, KUnit provides an optimised check in
`kunit_get_current_test()`, which checks CONFIG_KUNIT, a global static
key, and then the current thread's running KUnit test.
Add a safe wrapper function around this to know whether or not we are in
a KUnit test and examples showing how to mock a function and a module.
Signed-off-by: José Expósito <[email protected]>
Co-developed-by: Miguel Ojeda <[email protected]>
Signed-off-by: Miguel Ojeda <[email protected]>
Co-developed-by: David Gow <[email protected]>
Signed-off-by: David Gow <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Miguel Ojeda <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/atom.c')
0 files changed, 0 insertions, 0 deletions
