Commit 4cc0ee77 authored by SeongJae Park's avatar SeongJae Park Committed by Andrew Morton
Browse files

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/20221025173650.90624-3-sj@kernel.org


Signed-off-by: default avatarSeongJae Park <sj@kernel.org>
Cc: Shuah Khan <shuah@kernel.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 04e98764
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -8,5 +8,6 @@ TEST_PROGS = debugfs_attrs.sh debugfs_schemes.sh debugfs_target_ids.sh
TEST_PROGS += debugfs_empty_targets.sh debugfs_huge_count_read_write.sh
TEST_PROGS += debugfs_duplicate_context_creation.sh
TEST_PROGS += sysfs.sh
TEST_PROGS += reclaim.sh

include ../lib.mk
+42 −0
Original line number Diff line number Diff line
#!/bin/bash
# SPDX-License-Identifier: GPL-2.0

# Kselftest framework requirement - SKIP code is 4.
ksft_skip=4

if [ $EUID -ne 0 ]
then
	echo "Run as root"
	exit $ksft_skip
fi

damon_reclaim_enabled="/sys/module/damon_reclaim/parameters/enabled"
if [ ! -f "$damon_reclaim_enabled" ]
then
	echo "No 'enabled' file.  Maybe DAMON_RECLAIM not built"
	exit $ksft_skip
fi

nr_kdamonds=$(pgrep kdamond | wc -l)
if [ "$nr_kdamonds" -ne 0 ]
then
	echo "Another kdamond is running"
	exit $ksft_skip
fi

echo Y > "$damon_reclaim_enabled"

nr_kdamonds=$(pgrep kdamond | wc -l)
if [ "$nr_kdamonds" -ne 1 ]
then
	echo "kdamond is not turned on"
	exit 1
fi

echo N > "$damon_reclaim_enabled"
nr_kdamonds=$(pgrep kdamond | wc -l)
if [ "$nr_kdamonds" -ne 0 ]
then
	echo "kdamond is not turned off"
	exit 1
fi