mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 18:13:41 +02:00
selftests/damon/_damon_sysfs: support DAMOS quota weights setup
_damon_sysfs.py contains code for test-purpose DAMON sysfs interface control. Add support of DAMOS quotas prioritization weights setup for more tests. Link: https://lkml.kernel.org/r/20250720171652.92309-5-sj@kernel.org Signed-off-by: SeongJae Park <sj@kernel.org> Cc: Shuah Khan <shuah@kernel.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
b436dfaad2
commit
ff5aae307b
|
|
@ -125,12 +125,20 @@ class DamosQuota:
|
|||
ms = None # time quota
|
||||
goals = None # quota goals
|
||||
reset_interval_ms = None # quota reset interval
|
||||
weight_sz_permil = None
|
||||
weight_nr_accesses_permil = None
|
||||
weight_age_permil = None
|
||||
scheme = None # owner scheme
|
||||
|
||||
def __init__(self, sz=0, ms=0, goals=None, reset_interval_ms=0):
|
||||
def __init__(self, sz=0, ms=0, goals=None, reset_interval_ms=0,
|
||||
weight_sz_permil=0, weight_nr_accesses_permil=0,
|
||||
weight_age_permil=0):
|
||||
self.sz = sz
|
||||
self.ms = ms
|
||||
self.reset_interval_ms = reset_interval_ms
|
||||
self.weight_sz_permil = weight_sz_permil
|
||||
self.weight_nr_accesses_permil = weight_nr_accesses_permil
|
||||
self.weight_age_permil = weight_age_permil
|
||||
self.goals = goals if goals is not None else []
|
||||
for idx, goal in enumerate(self.goals):
|
||||
goal.idx = idx
|
||||
|
|
@ -151,6 +159,20 @@ class DamosQuota:
|
|||
if err is not None:
|
||||
return err
|
||||
|
||||
err = write_file(os.path.join(
|
||||
self.sysfs_dir(), 'weights', 'sz_permil'), self.weight_sz_permil)
|
||||
if err is not None:
|
||||
return err
|
||||
err = write_file(os.path.join(
|
||||
self.sysfs_dir(), 'weights', 'nr_accesses_permil'),
|
||||
self.weight_nr_accesses_permil)
|
||||
if err is not None:
|
||||
return err
|
||||
err = write_file(os.path.join(
|
||||
self.sysfs_dir(), 'weights', 'age_permil'), self.weight_age_permil)
|
||||
if err is not None:
|
||||
return err
|
||||
|
||||
nr_goals_file = os.path.join(self.sysfs_dir(), 'goals', 'nr_goals')
|
||||
content, err = read_file(nr_goals_file)
|
||||
if err is not None:
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user