Hi Linus,
Please pull the following KUnit next update for Linux 6.8-rc1.
This KUnit update for Linux 6.8-rc1 consists of:
- a new feature that adds APIs for managing devices introducing a set of helper functions which allow devices (internally a struct kunit_device) to be created and managed by KUnit. These devices will be automatically unregistered on test exit. These helpers can either use a user-provided struct device_driver, or have one automatically created and managed by KUnit. In both cases, the device lives on a new kunit_bus.
- changes to switch drm/tests to use kunit devices
- several fixes and enhancements to attribute feature
- changes to reorganize deferred action function introducing KUNIT_DEFINE_ACTION_WRAPPER
- new feature adds ability to run tests after boot using debugfs
- fixes and enhancements to string-stream-test: - parse ERR_PTR in string_stream_destroy() - unchecked dereference in bug fix in debugfs_print_results() - handling errors from alloc_string_stream() - NULL-dereference bug fix in kunit_init_suite()
diff is attached.
thanks, -- Shuah
---------------------------------------------------------------- The following changes since commit ceb6a6f023fd3e8b07761ed900352ef574010bcb:
Linux 6.7-rc6 (2023-12-17 15:19:28 -0800)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/shuah/linux-kselftest tags/linux_kselftest-kunit-6.8-rc1
for you to fetch changes up to 539e582a375dedee95a4fa9ca3f37cdb25c441ec:
kunit: Fix some comments which were mistakenly kerneldoc (2024-01-03 09:10:37 -0700)
---------------------------------------------------------------- linux_kselftest-kunit-6.8-rc1
This KUnit update for Linux 6.8-rc1 consists of:
- a new feature that adds APIs for managing devices introducing a set of helper functions which allow devices (internally a struct kunit_device) to be created and managed by KUnit. These devices will be automatically unregistered on test exit. These helpers can either use a user-provided struct device_driver, or have one automatically created and managed by KUnit. In both cases, the device lives on a new kunit_bus.
- changes to switch drm/tests to use kunit devices
- several fixes and enhancements to attribute feature
- changes to reorganize deferred action function introducing KUNIT_DEFINE_ACTION_WRAPPER
- new feature adds ability to run tests after boot using debugfs
- fixes and enhancements to string-stream-test: - parse ERR_PTR in string_stream_destroy() - unchecked dereference in bug fix in debugfs_print_results() - handling errors from alloc_string_stream() - NULL-dereference bug fix in kunit_init_suite()
---------------------------------------------------------------- David Gow (4): kunit: Add a macro to wrap a deferred action function drm/tests: Use KUNIT_DEFINE_ACTION_WRAPPER() drm/vc4: tests: Use KUNIT_DEFINE_ACTION_WRAPPER kunit: Fix some comments which were mistakenly kerneldoc
Maxime Ripard (1): drm/tests: Switch to kunit devices
Michal Wajdeczko (2): kunit: Add example for using test->priv kunit: Reset test->priv after each param iteration
Rae Moar (8): kunit: tool: fix parsing of test attributes kunit: tool: add test for parsing attributes kunit: move KUNIT_TABLE out of INIT_DATA kunit: add KUNIT_INIT_TABLE to init linker section kunit: add example suite to test init suites kunit: add is_init test attribute kunit: add ability to run tests after boot using debugfs Documentation: Add debugfs docs with run after boot
Richard Fitzgerald (8): kunit: string-stream-test: Avoid cast warning when testing gfp_t flags kunit: string-stream: Allow ERR_PTR to be passed to string_stream_destroy() kunit: debugfs: Fix unchecked dereference in debugfs_print_results() kunit: debugfs: Handle errors from alloc_string_stream() kunit: Fix NULL-dereference in kunit_init_suite() if suite->log is NULL kunit: Allow passing function pointer to kunit_activate_static_stub() kunit: Add example of kunit_activate_static_stub() with pointer-to-function kunit: Protect string comparisons against NULL
davidgow@google.com (4): kunit: Add APIs for managing devices fortify: test: Use kunit_device overflow: Replace fake root_device with kunit_device ASoC: topology: Replace fake root_device with kunit_device in tests
Documentation/dev-tools/kunit/api/resource.rst | 9 + Documentation/dev-tools/kunit/run_manual.rst | 51 +++++- Documentation/dev-tools/kunit/running_tips.rst | 7 + Documentation/dev-tools/kunit/usage.rst | 60 ++++++- drivers/gpu/drm/tests/drm_kunit_helpers.c | 78 +-------- drivers/gpu/drm/vc4/tests/vc4_mock.c | 9 +- include/asm-generic/vmlinux.lds.h | 11 +- include/kunit/device.h | 80 +++++++++ include/kunit/resource.h | 21 +++ include/kunit/static_stub.h | 2 +- include/kunit/test.h | 33 ++-- include/linux/module.h | 2 + kernel/module/main.c | 3 + lib/fortify_kunit.c | 5 +- lib/kunit/Makefile | 3 +- lib/kunit/attributes.c | 60 +++++++ lib/kunit/debugfs.c | 102 +++++++++++- lib/kunit/device-impl.h | 17 ++ lib/kunit/device.c | 181 +++++++++++++++++++++ lib/kunit/executor.c | 68 +++++++- lib/kunit/kunit-example-test.c | 87 ++++++++++ lib/kunit/kunit-test.c | 139 +++++++++++++++- lib/kunit/string-stream-test.c | 2 +- lib/kunit/string-stream.c | 2 +- lib/kunit/test.c | 48 +++++- lib/overflow_kunit.c | 5 +- sound/soc/soc-topology-test.c | 10 +- tools/testing/kunit/kunit_parser.py | 4 +- tools/testing/kunit/kunit_tool_test.py | 16 ++ .../kunit/test_data/test_parse_attributes.log | 9 + 30 files changed, 978 insertions(+), 146 deletions(-) create mode 100644 include/kunit/device.h create mode 100644 lib/kunit/device-impl.h create mode 100644 lib/kunit/device.c create mode 100644 tools/testing/kunit/test_data/test_parse_attributes.log ----------------------------------------------------------------