34 lines · python
1#!/usr/bin/env python32# SPDX-License-Identifier: GPL-2.03 4import subprocess5import time6 7import _damon_sysfs8 9def main():10 proc = subprocess.Popen(['sleep', '2'])11 kdamonds = _damon_sysfs.Kdamonds([_damon_sysfs.Kdamond(12 contexts=[_damon_sysfs.DamonCtx(13 ops='vaddr',14 targets=[_damon_sysfs.DamonTarget(pid=proc.pid)],15 schemes=[_damon_sysfs.Damos(16 access_pattern=_damon_sysfs.DamosAccessPattern(17 nr_accesses=[200, 200]))] # schemes18 )] # contexts19 )]) # kdamonds20 21 err = kdamonds.start()22 if err != None:23 print('kdamond start failed: %s' % err)24 exit(1)25 26 while proc.poll() == None:27 err = kdamonds.kdamonds[0].update_schemes_tried_bytes()28 if err != None:29 print('tried bytes update failed: %s' % err)30 exit(1)31 32if __name__ == '__main__':33 main()34