xref: /linux/tools/testing/selftests/damon/_debugfs_common.sh (revision 79790b6818e96c58fe2bffee1b418c16e64e7b80)
1#!/bin/bash
2# SPDX-License-Identifier: GPL-2.0
3
4test_write_result() {
5	file=$1
6	content=$2
7	orig_content=$3
8	expect_reason=$4
9	expected=$5
10
11	echo "$content" > "$file"
12	if [ $? -ne "$expected" ]
13	then
14		echo "writing $content to $file doesn't return $expected"
15		echo "expected because: $expect_reason"
16		echo "$orig_content" > "$file"
17		exit 1
18	fi
19}
20
21test_write_succ() {
22	test_write_result "$1" "$2" "$3" "$4" 0
23}
24
25test_write_fail() {
26	test_write_result "$1" "$2" "$3" "$4" 1
27}
28
29test_content() {
30	file=$1
31	orig_content=$2
32	expected=$3
33	expect_reason=$4
34
35	content=$(cat "$file")
36	if [ "$content" != "$expected" ]
37	then
38		echo "reading $file expected $expected but $content"
39		echo "expected because: $expect_reason"
40		echo "$orig_content" > "$file"
41		exit 1
42	fi
43}
44
45source ./_chk_dependency.sh
46
47damon_onoff="$DBGFS/monitor_on"
48if [ -f "$DBGFS/monitor_on_DEPRECATED" ]
49then
50	damon_onoff="$DBGFS/monitor_on_DEPRECATED"
51else
52	damon_onoff="$DBGFS/monitor_on"
53fi
54
55if [ $(cat "$damon_onoff") = "on" ]
56then
57	echo "monitoring is on"
58	exit $ksft_skip
59fi
60