Implement minor improvements on code readability and tests for DAMON. First seven patches are for DAMON code readability and resulting maintenance. Patches 1 and 2 make damon_set_regions() safer and easier to read. Patches 3 and 4 remove fragmented DAMON API use cases. Patches 5-7 hides unused core functions that are unnecessarily exposed to API callers.
The following seven patches are for DAMON tests improvement. Patches 8 and 9 adds and removes DAMON_DEBUG_SANITY verifications to ensure reasonable test coverage without too high overhead. Patch 10 adds a new kunit test for damon_set_regions(). Patch 11 makes sysfs.py selftest more gracefully finishes under test failures. Patches 12-13 adds simple sysfs.sh test cases for the monitoring intervals goal directory, the addr_unit file and the pause file. Changes from RFC v1 - RFC v1: https://lore.kernel.org/[email protected] - Handle damon_set_regions() failure in vaddr unit test. - Free ranges array in vaddr unit test. - Fix wrong region address verification. - Fix typos in selftest: s/exit/exist/ SeongJae Park (14): mm/damon/core: safely handle no region case in damon_set_regions() mm/damon/core: do not use region out of a loop in damon_set_regions() samples/damon/mtier: replace damon_add_region() with damon_set_regions() mm/damon/tests/vaddr-kunit: replace damon_add_region() with damon_set_regions() mm/damon/core: hide damon_add_region() mm/damon/core: hide damon_insert_region() mm/damon/core: hide damon_destroy_region() mm/damon/core: add kdamond_call() debug_sanity check mm/damon/core: remove damon_verify_nr_regions() mm/damon/tests/core-kunit: add damon_set_regions() test cases selftests/damon/sysfs.py: stop kdamonds before failing selftests/damon/sysfs.sh: test monitoring intervals goal dir selftests/damon/sysfs.sh: test addr_unit file existence selftests/damon/sysfs.sh: test pause file existence include/linux/damon.h | 13 --- mm/damon/core.c | 92 ++++++++++++---- mm/damon/tests/core-kunit.h | 142 +++++++++++++++++++++---- mm/damon/tests/vaddr-kunit.h | 24 +++-- samples/damon/mtier.c | 10 +- tools/testing/selftests/damon/sysfs.py | 4 + tools/testing/selftests/damon/sysfs.sh | 14 +++ 7 files changed, 230 insertions(+), 69 deletions(-) base-commit: ae90ad6788e582af07da1b2ce81277d5a65f4f89 -- 2.47.3

