Re: q[PATCH] selftests/damon: fix damon selftests by installing _common.sh
From: Enze Li
Date: Tue Aug 12 2025 - 23:04:56 EST
Hello Alexandre, Sang-Heon
On Tue, Aug 12 2025 at 10:27:00 PM +0900, Sang-Heon Jeon wrote:
> Hello, Alexandre
>
> On Tue, Aug 12, 2025 at 9:32 PM Sang-Heon Jeon <ekffu200098@xxxxxxxxx> wrote:
>>
>> Hello, Alexandre
>>
>> On Tue, Aug 12, 2025 at 5:13 PM Alexandre Ghiti <alexghiti@xxxxxxxxxxxx> wrote:
>> >
>> > _common.sh was recently introduced but is not installed and then
>> > triggers an error when trying to run the damon selftests:
>> >
>> > selftests: damon: sysfs.sh
>> > ./sysfs.sh: line 4: _common.sh: No such file or directory
>> >
>> > Install this file to avoid this error.
Excellent catch! This patch unlocks a testing method that was
completely off my radar. :)
>>
>> I tried to reproduce those error with my vm environment but I failed;
>> with my workaround test method, it doesn't exist.
>> If you're okay, could you please tell me line by line how you execute
>> tests in what environment?
>> I'm also struggling with the test environment, as well.
>
> I succeeded to reproduce and also check that this patch removes those errors.
>
Thanks to Sang-Heon for helping reproduce this issue. I reproduce this
issue locally as well and I can confirm that this patch will fix it
successfully.
Here's my reproduction procedure:
# cd /root/linux/
# make -C tools/testing/selftests/ install INSTALL_PATH=/root/test-dir/
# cd /root/test-dir/
# ./run_kselftest.sh -c damon
and I got the following error,
TAP version 13
1..13
# timeout set to 45
# selftests: damon: sysfs.sh
# ./sysfs.sh: line 4: _common.sh: No such file or directory
# ./sysfs.sh: line 369: check_dependencies: command not found
ok 1 selftests: damon: sysfs.sh
with Alexandre's patch applied, I got this,
TAP version 13
1..13
# timeout set to 45
# selftests: damon: sysfs.sh
ok 1 selftests: damon: sysfs.sh
The root cause was my misunderstanding of the TEST_FILES macro. I've now
refined the testing methodology - thanks all for the guidance.
Tested-by: Enze Li <lienze@xxxxxxxxxx>
Best Regards,
Enze
>> > Fixes: 511914506d19 ("selftests/damon: introduce _common.sh to host shared function")
>> > Signed-off-by: Alexandre Ghiti <alexghiti@xxxxxxxxxxxx>
>> > ---
>
> Tested-by: Sang-Heon Jeon <ekffu200098@xxxxxxxxx>
>
>> > tools/testing/selftests/damon/Makefile | 1 +
>> > 1 file changed, 1 insertion(+)
>> >
>> > diff --git a/tools/testing/selftests/damon/Makefile b/tools/testing/selftests/damon/Makefile
>> > index 5b230deb19e8ee6cee56eb8f18c35e12f331e8b7..ddc69e8bde2905ff1c461a08f2ad008e6b28ac87 100644
>> > --- a/tools/testing/selftests/damon/Makefile
>> > +++ b/tools/testing/selftests/damon/Makefile
>> > @@ -4,6 +4,7 @@
>> > TEST_GEN_FILES += access_memory access_memory_even
>> >
>> > TEST_FILES = _damon_sysfs.py
>> > +TEST_FILES += _common.sh
>> >
>> > # functionality tests
>> > TEST_PROGS += sysfs.sh
>> >
>> > ---
>> > base-commit: 2754d549af31f8f029f02d02cd8e574676229b3d
>>
>> Does this commit exist in `mm-new` or `damon-next`? I failed to setup
>> the same base-commit environment.
>
> However, I'm still not sure that this patch is in the correct
> baseline. maybe it will not cause any problems with the merge
> though... but I'm not sure. So I didn't add a reviewed-by tag.
>
>> > change-id: 20250812-alex-fixes_manual-aed3ef75dd83
>> >
>> > Best regards,
>> > --
>> > Alexandre Ghiti <alexghiti@xxxxxxxxxxxx>
>> >
>> >
>>
>> Thank you for great work!
>>
>> Best Regards.
>> Sang-Heon Jeon
>
> Best Regards.
> Sang-Heon Jeon