Skip to content

Commit 84dc442

Browse files
sjp38akpm00
authored andcommitted
selftests/damon/sysfs.py: test quota goal commitment
Current DAMOS quota commitment assertion is not testing quota goal commitment. Add the test. 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 f797e70 commit 84dc442

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

tools/testing/selftests/damon/sysfs.py

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,28 @@ def assert_watermarks_committed(watermarks, dump):
4545
assert_true(dump['mid'] == watermarks.mid, 'mid', dump)
4646
assert_true(dump['low'] == watermarks.low, 'low', dump)
4747

48+
def assert_quota_goal_committed(qgoal, dump):
49+
metric_val = {
50+
'user_input': 0,
51+
'some_mem_psi_us': 1,
52+
'node_mem_used_bp': 2,
53+
'node_mem_free_bp': 3,
54+
}
55+
assert_true(dump['metric'] == metric_val[qgoal.metric], 'metric', dump)
56+
assert_true(dump['target_value'] == qgoal.target_value, 'target_value',
57+
dump)
58+
if qgoal.metric == 'user_input':
59+
assert_true(dump['current_value'] == qgoal.current_value,
60+
'current_value', dump)
61+
assert_true(dump['nid'] == qgoal.nid, 'nid', dump)
62+
4863
def assert_quota_committed(quota, dump):
4964
assert_true(dump['reset_interval'] == quota.reset_interval_ms,
5065
'reset_interval', dump)
5166
assert_true(dump['ms'] == quota.ms, 'ms', dump)
5267
assert_true(dump['sz'] == quota.sz, 'sz', dump)
53-
# TODO: assert goals are committed
68+
for idx, qgoal in enumerate(quota.goals):
69+
assert_quota_goal_committed(qgoal, dump['goals'][idx])
5470
assert_true(dump['weight_sz'] == quota.weight_sz_permil, 'weight_sz', dump)
5571
assert_true(dump['weight_nr_accesses'] == quota.weight_nr_accesses_permil,
5672
'weight_nr_accesses', dump)

0 commit comments

Comments
 (0)