162306a36Sopenharmony_ci#!/bin/bash 262306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0 362306a36Sopenharmony_ci 462306a36Sopenharmony_ci# Kselftest framework requirement - SKIP code is 4. 562306a36Sopenharmony_ciksft_skip=4 662306a36Sopenharmony_ci 762306a36Sopenharmony_ciif [ $EUID -ne 0 ] 862306a36Sopenharmony_cithen 962306a36Sopenharmony_ci echo "Run as root" 1062306a36Sopenharmony_ci exit $ksft_skip 1162306a36Sopenharmony_cifi 1262306a36Sopenharmony_ci 1362306a36Sopenharmony_cidamon_reclaim_enabled="/sys/module/damon_reclaim/parameters/enabled" 1462306a36Sopenharmony_ciif [ ! -f "$damon_reclaim_enabled" ] 1562306a36Sopenharmony_cithen 1662306a36Sopenharmony_ci echo "No 'enabled' file. Maybe DAMON_RECLAIM not built" 1762306a36Sopenharmony_ci exit $ksft_skip 1862306a36Sopenharmony_cifi 1962306a36Sopenharmony_ci 2062306a36Sopenharmony_cinr_kdamonds=$(pgrep kdamond | wc -l) 2162306a36Sopenharmony_ciif [ "$nr_kdamonds" -ne 0 ] 2262306a36Sopenharmony_cithen 2362306a36Sopenharmony_ci echo "Another kdamond is running" 2462306a36Sopenharmony_ci exit $ksft_skip 2562306a36Sopenharmony_cifi 2662306a36Sopenharmony_ci 2762306a36Sopenharmony_ciecho Y > "$damon_reclaim_enabled" 2862306a36Sopenharmony_ci 2962306a36Sopenharmony_cinr_kdamonds=$(pgrep kdamond | wc -l) 3062306a36Sopenharmony_ciif [ "$nr_kdamonds" -ne 1 ] 3162306a36Sopenharmony_cithen 3262306a36Sopenharmony_ci echo "kdamond is not turned on" 3362306a36Sopenharmony_ci exit 1 3462306a36Sopenharmony_cifi 3562306a36Sopenharmony_ci 3662306a36Sopenharmony_ciecho N > "$damon_reclaim_enabled" 3762306a36Sopenharmony_cinr_kdamonds=$(pgrep kdamond | wc -l) 3862306a36Sopenharmony_ciif [ "$nr_kdamonds" -ne 0 ] 3962306a36Sopenharmony_cithen 4062306a36Sopenharmony_ci echo "kdamond is not turned off" 4162306a36Sopenharmony_ci exit 1 4262306a36Sopenharmony_cifi 43