Skip to content

Commit 4cc0ee7

Browse files
sjp38akpm00
authored andcommitted
selftests/damon: add tests for DAMON_RECLAIM's enabled parameter
Add simple test cases for DAMON_RECLAIM's 'enabled' parameter. Those tests are focusing on the synchronous behavior of DAMON_RECLAIM enabling and disabling. Link: https://lkml.kernel.org/r/[email protected] Signed-off-by: SeongJae Park <[email protected]> Cc: Shuah Khan <[email protected]> Signed-off-by: Andrew Morton <[email protected]>
1 parent 04e9876 commit 4cc0ee7

File tree

2 files changed

+43
-0
lines changed

2 files changed

+43
-0
lines changed

tools/testing/selftests/damon/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,5 +8,6 @@ TEST_PROGS = debugfs_attrs.sh debugfs_schemes.sh debugfs_target_ids.sh
88
TEST_PROGS += debugfs_empty_targets.sh debugfs_huge_count_read_write.sh
99
TEST_PROGS += debugfs_duplicate_context_creation.sh
1010
TEST_PROGS += sysfs.sh
11+
TEST_PROGS += reclaim.sh
1112

1213
include ../lib.mk
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
#!/bin/bash
2+
# SPDX-License-Identifier: GPL-2.0
3+
4+
# Kselftest framework requirement - SKIP code is 4.
5+
ksft_skip=4
6+
7+
if [ $EUID -ne 0 ]
8+
then
9+
echo "Run as root"
10+
exit $ksft_skip
11+
fi
12+
13+
damon_reclaim_enabled="/sys/module/damon_reclaim/parameters/enabled"
14+
if [ ! -f "$damon_reclaim_enabled" ]
15+
then
16+
echo "No 'enabled' file. Maybe DAMON_RECLAIM not built"
17+
exit $ksft_skip
18+
fi
19+
20+
nr_kdamonds=$(pgrep kdamond | wc -l)
21+
if [ "$nr_kdamonds" -ne 0 ]
22+
then
23+
echo "Another kdamond is running"
24+
exit $ksft_skip
25+
fi
26+
27+
echo Y > "$damon_reclaim_enabled"
28+
29+
nr_kdamonds=$(pgrep kdamond | wc -l)
30+
if [ "$nr_kdamonds" -ne 1 ]
31+
then
32+
echo "kdamond is not turned on"
33+
exit 1
34+
fi
35+
36+
echo N > "$damon_reclaim_enabled"
37+
nr_kdamonds=$(pgrep kdamond | wc -l)
38+
if [ "$nr_kdamonds" -ne 0 ]
39+
then
40+
echo "kdamond is not turned off"
41+
exit 1
42+
fi

0 commit comments

Comments
 (0)