xref: /linux/Documentation/ABI/testing/sysfs-kernel-mm-damon (revision a1ff5a7d78a036d6c2178ee5acd6ba4946243800)
1f968c6a4SSeongJae Parkwhat:		/sys/kernel/mm/damon/
2f968c6a4SSeongJae ParkDate:		Mar 2022
3f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
4f968c6a4SSeongJae ParkDescription:	Interface for Data Access MONitoring (DAMON).  Contains files
5f968c6a4SSeongJae Park		for controlling DAMON.  For more details on DAMON itself,
6f968c6a4SSeongJae Park		please refer to Documentation/admin-guide/mm/damon/index.rst.
7f968c6a4SSeongJae Park
8f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/
9f968c6a4SSeongJae ParkDate:		Mar 2022
10f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
11f968c6a4SSeongJae ParkDescription:	Interface for privileged users of DAMON.  Contains files for
12f968c6a4SSeongJae Park		controlling DAMON that aimed to be used by privileged users.
13f968c6a4SSeongJae Park
14f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/nr_kdamonds
15f968c6a4SSeongJae ParkDate:		Mar 2022
16f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
17f968c6a4SSeongJae ParkDescription:	Writing a number 'N' to this file creates the number of
18f968c6a4SSeongJae Park		directories for controlling each DAMON worker thread (kdamond)
19f968c6a4SSeongJae Park		named '0' to 'N-1' under the kdamonds/ directory.
20f968c6a4SSeongJae Park
21f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/state
22f968c6a4SSeongJae ParkDate:		Mar 2022
23f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
24f968c6a4SSeongJae ParkDescription:	Writing 'on' or 'off' to this file makes the kdamond starts or
25f968c6a4SSeongJae Park		stops, respectively.  Reading the file returns the keywords
26adc286e6SSeongJae Park		based on the current status.  Writing 'commit' to this file
27adc286e6SSeongJae Park		makes the kdamond reads the user inputs in the sysfs files
280972913fSSeongJae Park		except 'state' again.  Writing 'commit_schemes_quota_goals' to
290972913fSSeongJae Park		this file makes the kdamond reads the quota goal files again.
300972913fSSeongJae Park		Writing 'update_schemes_stats' to the file updates contents of
310972913fSSeongJae Park		schemes stats files of the kdamond.  Writing
320972913fSSeongJae Park		'update_schemes_tried_regions' to the file updates contents of
330972913fSSeongJae Park		'tried_regions' directory of every scheme directory of this
340972913fSSeongJae Park		kdamond.  Writing 'update_schemes_tried_bytes' to the file
350972913fSSeongJae Park		updates only '.../tried_regions/total_bytes' files of this
36e91b5ccfSSeongJae Park		kdamond.  Writing 'clear_schemes_tried_regions' to the file
3768c4905bSSeongJae Park		removes contents of the 'tried_regions' directory.  Writing
3868c4905bSSeongJae Park		'update_schemes_effective_quotas' to the file updates
3968c4905bSSeongJae Park		'.../quotas/effective_bytes' files of this kdamond.
40f968c6a4SSeongJae Park
41f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/pid
42f968c6a4SSeongJae ParkDate:		Mar 2022
43f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
44f968c6a4SSeongJae ParkDescription:	Reading this file returns the pid of the kdamond if it is
45f968c6a4SSeongJae Park		running.
46f968c6a4SSeongJae Park
47f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/nr_contexts
48f968c6a4SSeongJae ParkDate:		Mar 2022
49f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
50f968c6a4SSeongJae ParkDescription:	Writing a number 'N' to this file creates the number of
51f968c6a4SSeongJae Park		directories for controlling each DAMON context named '0' to
52f968c6a4SSeongJae Park		'N-1' under the contexts/ directory.
53f968c6a4SSeongJae Park
542fe60ec9SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/avail_operations
552fe60ec9SSeongJae ParkDate:		Apr 2022
562fe60ec9SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
572fe60ec9SSeongJae ParkDescription:	Reading this file returns the available monitoring operations
582fe60ec9SSeongJae Park		sets on the currently running kernel.
592fe60ec9SSeongJae Park
60f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/operations
61f968c6a4SSeongJae ParkDate:		Mar 2022
62f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
63f968c6a4SSeongJae ParkDescription:	Writing a keyword for a monitoring operations set ('vaddr' for
6491541808SSeongJae Park		virtual address spaces monitoring, 'fvaddr' for fixed virtual
6591541808SSeongJae Park		address ranges monitoring, and 'paddr' for the physical address
6691541808SSeongJae Park		space monitoring) to this file makes the context to use the
6791541808SSeongJae Park		operations set.  Reading the file returns the keyword for the
6891541808SSeongJae Park		operations set the context is set to use.
6991541808SSeongJae Park
7091541808SSeongJae Park		Note that only the operations sets that listed in
7191541808SSeongJae Park		'avail_operations' file are valid inputs.
72f968c6a4SSeongJae Park
73f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/sample_us
74f968c6a4SSeongJae ParkDate:		Mar 2022
75f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
76f968c6a4SSeongJae ParkDescription:	Writing a value to this file sets the sampling interval of the
77f968c6a4SSeongJae Park		DAMON context in microseconds as the value.  Reading this file
78f968c6a4SSeongJae Park		returns the value.
79f968c6a4SSeongJae Park
80f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/aggr_us
81f968c6a4SSeongJae ParkDate:		Mar 2022
82f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
83f968c6a4SSeongJae ParkDescription:	Writing a value to this file sets the aggregation interval of
84f968c6a4SSeongJae Park		the DAMON context in microseconds as the value.  Reading this
85f968c6a4SSeongJae Park		file returns the value.
86f968c6a4SSeongJae Park
87f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/update_us
88f968c6a4SSeongJae ParkDate:		Mar 2022
89f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
90f968c6a4SSeongJae ParkDescription:	Writing a value to this file sets the update interval of the
91f968c6a4SSeongJae Park		DAMON context in microseconds as the value.  Reading this file
92f968c6a4SSeongJae Park		returns the value.
93f968c6a4SSeongJae Park
94f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/min
95f968c6a4SSeongJae Park
96f968c6a4SSeongJae ParkWDate:		Mar 2022
97f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
98f968c6a4SSeongJae ParkDescription:	Writing a value to this file sets the minimum number of
99f968c6a4SSeongJae Park		monitoring regions of the DAMON context as the value.  Reading
100f968c6a4SSeongJae Park		this file returns the value.
101f968c6a4SSeongJae Park
102f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/max
103f968c6a4SSeongJae ParkDate:		Mar 2022
104f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
105f968c6a4SSeongJae ParkDescription:	Writing a value to this file sets the maximum number of
106f968c6a4SSeongJae Park		monitoring regions of the DAMON context as the value.  Reading
107f968c6a4SSeongJae Park		this file returns the value.
108f968c6a4SSeongJae Park
109f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/nr_targets
110f968c6a4SSeongJae ParkDate:		Mar 2022
111f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
112f968c6a4SSeongJae ParkDescription:	Writing a number 'N' to this file creates the number of
113f968c6a4SSeongJae Park		directories for controlling each DAMON target of the context
114f968c6a4SSeongJae Park		named '0' to 'N-1' under the contexts/ directory.
115f968c6a4SSeongJae Park
116f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/pid_target
117f968c6a4SSeongJae ParkDate:		Mar 2022
118f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
119f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the pid of
120f968c6a4SSeongJae Park		the target process if the context is for virtual address spaces
121f968c6a4SSeongJae Park		monitoring, respectively.
122f968c6a4SSeongJae Park
123f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/nr_regions
124f968c6a4SSeongJae ParkDate:		Mar 2022
125f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
126f968c6a4SSeongJae ParkDescription:	Writing a number 'N' to this file creates the number of
127f968c6a4SSeongJae Park		directories for setting each DAMON target memory region of the
128f968c6a4SSeongJae Park		context named '0' to 'N-1' under the regions/ directory.  In
129f968c6a4SSeongJae Park		case of the virtual address space monitoring, DAMON
130f968c6a4SSeongJae Park		automatically sets the target memory region based on the target
131f968c6a4SSeongJae Park		processes' mappings.
132f968c6a4SSeongJae Park
133f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/start
134f968c6a4SSeongJae ParkDate:		Mar 2022
135f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
136f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the start
137f968c6a4SSeongJae Park		address of the monitoring region.
138f968c6a4SSeongJae Park
139f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/end
140f968c6a4SSeongJae ParkDate:		Mar 2022
141f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
142f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the end
143f968c6a4SSeongJae Park		address of the monitoring region.
144f968c6a4SSeongJae Park
145f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/nr_schemes
146f968c6a4SSeongJae ParkDate:		Mar 2022
147f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
148f968c6a4SSeongJae ParkDescription:	Writing a number 'N' to this file creates the number of
149f968c6a4SSeongJae Park		directories for controlling each DAMON-based operation scheme
150f968c6a4SSeongJae Park		of the context named '0' to 'N-1' under the schemes/ directory.
151f968c6a4SSeongJae Park
152f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/action
153f968c6a4SSeongJae ParkDate:		Mar 2022
154f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
155f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the action
156f968c6a4SSeongJae Park		of the scheme.
157f968c6a4SSeongJae Park
158*e36287c6SHyeongtak JiWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/target_nid
159*e36287c6SHyeongtak JiDate:		Jun 2024
160*e36287c6SHyeongtak JiContact:	SeongJae Park <sj@kernel.org>
161*e36287c6SHyeongtak JiDescription:	Action's target NUMA node id.  Supported by only relevant
162*e36287c6SHyeongtak Ji		actions.
163*e36287c6SHyeongtak Ji
164d57d36b5SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/apply_interval_us
165d57d36b5SSeongJae ParkDate:		Sep 2023
166d57d36b5SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
167d57d36b5SSeongJae ParkDescription:	Writing a value to this file sets the action apply interval of
168d57d36b5SSeongJae Park		the scheme in microseconds.  Reading this file returns the
169d57d36b5SSeongJae Park		value.
170d57d36b5SSeongJae Park
171f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/min
172f968c6a4SSeongJae ParkDate:		Mar 2022
173f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
174ebab9426SBjorn HelgaasDescription:	Writing to and reading from this file sets and gets the minimum
175f968c6a4SSeongJae Park		size of the scheme's target regions in bytes.
176f968c6a4SSeongJae Park
177f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/max
178f968c6a4SSeongJae ParkDate:		Mar 2022
179f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
180f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the maximum
181f968c6a4SSeongJae Park		size of the scheme's target regions in bytes.
182f968c6a4SSeongJae Park
183f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/min
184f968c6a4SSeongJae ParkDate:		Mar 2022
185f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
186f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the manimum
187f968c6a4SSeongJae Park		'nr_accesses' of the scheme's target regions.
188f968c6a4SSeongJae Park
189f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/max
190f968c6a4SSeongJae ParkDate:		Mar 2022
191f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
192f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the maximum
193f968c6a4SSeongJae Park		'nr_accesses' of the scheme's target regions.
194f968c6a4SSeongJae Park
195f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/min
196f968c6a4SSeongJae ParkDate:		Mar 2022
197f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
198f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the minimum
199f968c6a4SSeongJae Park		'age' of the scheme's target regions.
200f968c6a4SSeongJae Park
201f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/max
202f968c6a4SSeongJae ParkDate:		Mar 2022
203f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
204f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the maximum
205f968c6a4SSeongJae Park		'age' of the scheme's target regions.
206f968c6a4SSeongJae Park
207f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/ms
208f968c6a4SSeongJae ParkDate:		Mar 2022
209f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
210f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the time
211f968c6a4SSeongJae Park		quota of the scheme in milliseconds.
212f968c6a4SSeongJae Park
213f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/bytes
214f968c6a4SSeongJae ParkDate:		Mar 2022
215f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
216f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the size
217f968c6a4SSeongJae Park		quota of the scheme in bytes.
218f968c6a4SSeongJae Park
21968c4905bSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/effective_bytes
22068c4905bSSeongJae ParkDate:		Feb 2024
22168c4905bSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
22268c4905bSSeongJae ParkDescription:	Reading from this file gets the effective size quota of the
22368c4905bSSeongJae Park		scheme in bytes, which adjusted for the time quota and goals.
22468c4905bSSeongJae Park
225f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/reset_interval_ms
226f968c6a4SSeongJae ParkDate:		Mar 2022
227f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
228f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the quotas
229f968c6a4SSeongJae Park		charge reset interval of the scheme in milliseconds.
230f968c6a4SSeongJae Park
2310972913fSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/nr_goals
2320972913fSSeongJae ParkDate:		Nov 2023
2330972913fSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
2340972913fSSeongJae ParkDescription:	Writing a number 'N' to this file creates the number of
2350972913fSSeongJae Park		directories for setting automatic tuning of the scheme's
2360972913fSSeongJae Park		aggressiveness named '0' to 'N-1' under the goals/ directory.
2370972913fSSeongJae Park
238adc3908bSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_metric
239adc3908bSSeongJae ParkDate:		Feb 2024
240adc3908bSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
241adc3908bSSeongJae ParkDescription:	Writing to and reading from this file sets and gets the quota
242adc3908bSSeongJae Park		auto-tuning goal metric.
243adc3908bSSeongJae Park
2440972913fSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_value
2450972913fSSeongJae ParkDate:		Nov 2023
2460972913fSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
2470972913fSSeongJae ParkDescription:	Writing to and reading from this file sets and gets the target
2480972913fSSeongJae Park		value of the goal metric.
2490972913fSSeongJae Park
2500972913fSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/current_value
2510972913fSSeongJae ParkDate:		Nov 2023
2520972913fSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
2530972913fSSeongJae ParkDescription:	Writing to and reading from this file sets and gets the current
2540972913fSSeongJae Park		value of the goal metric.
2550972913fSSeongJae Park
256f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/sz_permil
257f968c6a4SSeongJae ParkDate:		Mar 2022
258f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
259f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the
260f968c6a4SSeongJae Park		under-quota limit regions prioritization weight for 'size' in
261f968c6a4SSeongJae Park		permil.
262f968c6a4SSeongJae Park
263f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/nr_accesses_permil
264f968c6a4SSeongJae ParkDate:		Mar 2022
265f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
266f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the
267f968c6a4SSeongJae Park		under-quota limit regions prioritization weight for
268f968c6a4SSeongJae Park		'nr_accesses' in permil.
269f968c6a4SSeongJae Park
270f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/age_permil
271f968c6a4SSeongJae ParkDate:		Mar 2022
272f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
273f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the
274f968c6a4SSeongJae Park		under-quota limit regions prioritization weight for 'age' in
275f968c6a4SSeongJae Park		permil.
276f968c6a4SSeongJae Park
277f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/metric
278f968c6a4SSeongJae ParkDate:		Mar 2022
279f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
280f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the metric
281f968c6a4SSeongJae Park		of the watermarks for the scheme.  The writable/readable
282f968c6a4SSeongJae Park		keywords for this file are 'none' for disabling the watermarks
283f968c6a4SSeongJae Park		feature, or 'free_mem_rate' for the system's global free memory
284f968c6a4SSeongJae Park		rate in permil.
285f968c6a4SSeongJae Park
286f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/interval_us
287f968c6a4SSeongJae ParkDate:		Mar 2022
288f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
289f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the metric
290f968c6a4SSeongJae Park		check interval of the watermarks for the scheme in
291f968c6a4SSeongJae Park		microseconds.
292f968c6a4SSeongJae Park
293f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/high
294f968c6a4SSeongJae ParkDate:		Mar 2022
295f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
296f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the high
297f968c6a4SSeongJae Park		watermark of the scheme in permil.
298f968c6a4SSeongJae Park
299f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/mid
300f968c6a4SSeongJae ParkDate:		Mar 2022
301f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
302f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the mid
303f968c6a4SSeongJae Park		watermark of the scheme in permil.
304f968c6a4SSeongJae Park
305f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/low
306f968c6a4SSeongJae ParkDate:		Mar 2022
307f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
308f968c6a4SSeongJae ParkDescription:	Writing to and reading from this file sets and gets the low
309f968c6a4SSeongJae Park		watermark of the scheme in permil.
310f968c6a4SSeongJae Park
311497b099dSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/nr_filters
312497b099dSSeongJae ParkDate:		Dec 2022
313497b099dSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
314497b099dSSeongJae ParkDescription:	Writing a number 'N' to this file creates the number of
315497b099dSSeongJae Park		directories for setting filters of the scheme named '0' to
316497b099dSSeongJae Park		'N-1' under the filters/ directory.
317497b099dSSeongJae Park
318497b099dSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/type
319497b099dSSeongJae ParkDate:		Dec 2022
320497b099dSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
321497b099dSSeongJae ParkDescription:	Writing to and reading from this file sets and gets the type of
3222beb97fcSSeongJae Park		the memory of the interest.  'anon' for anonymous pages,
323eedbd23dSSeongJae Park		'memcg' for specific memory cgroup, 'young' for young pages,
324eedbd23dSSeongJae Park		'addr' for address range (an open-ended interval), or 'target'
325eedbd23dSSeongJae Park		for DAMON monitoring target can be written and read.
326497b099dSSeongJae Park
327497b099dSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/memcg_path
328497b099dSSeongJae ParkDate:		Dec 2022
329497b099dSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
330497b099dSSeongJae ParkDescription:	If 'memcg' is written to the 'type' file, writing to and
331497b099dSSeongJae Park		reading from this file sets and gets the path to the memory
332497b099dSSeongJae Park		cgroup of the interest.
333497b099dSSeongJae Park
3342beb97fcSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/addr_start
3352beb97fcSSeongJae ParkDate:		Jul 2023
3362beb97fcSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
3372beb97fcSSeongJae ParkDescription:	If 'addr' is written to the 'type' file, writing to or reading
3382beb97fcSSeongJae Park		from this file sets or gets the start address of the address
3392beb97fcSSeongJae Park		range for the filter.
3402beb97fcSSeongJae Park
3412beb97fcSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/addr_end
3422beb97fcSSeongJae ParkDate:		Jul 2023
3432beb97fcSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
3442beb97fcSSeongJae ParkDescription:	If 'addr' is written to the 'type' file, writing to or reading
3452beb97fcSSeongJae Park		from this file sets or gets the end address of the address
3462beb97fcSSeongJae Park		range for the filter.
3472beb97fcSSeongJae Park
348d3d21d91SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/target_idx
349d3d21d91SSeongJae ParkDate:		Dec 2022
350d3d21d91SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
351d3d21d91SSeongJae ParkDescription:	If 'target' is written to the 'type' file, writing to or
352d3d21d91SSeongJae Park		reading from this file sets or gets the index of the DAMON
353d3d21d91SSeongJae Park		monitoring target of the interest.
3542beb97fcSSeongJae Park
355497b099dSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/matching
356497b099dSSeongJae ParkDate:		Dec 2022
357497b099dSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
358497b099dSSeongJae ParkDescription:	Writing 'Y' or 'N' to this file sets whether to filter out
359497b099dSSeongJae Park		pages that do or do not match to the 'type' and 'memcg_path',
360497b099dSSeongJae Park		respectively.  Filter out means the action of the scheme will
361497b099dSSeongJae Park		not be applied to.
362497b099dSSeongJae Park
363f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_tried
364f968c6a4SSeongJae ParkDate:		Mar 2022
365f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
366f968c6a4SSeongJae ParkDescription:	Reading this file returns the number of regions that the action
367f968c6a4SSeongJae Park		of the scheme has tried to be applied.
368f968c6a4SSeongJae Park
369f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_tried
370f968c6a4SSeongJae ParkDate:		Mar 2022
371f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
372f968c6a4SSeongJae ParkDescription:	Reading this file returns the total size of regions that the
373f968c6a4SSeongJae Park		action of the scheme has tried to be applied in bytes.
374f968c6a4SSeongJae Park
375f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_applied
376f968c6a4SSeongJae ParkDate:		Mar 2022
377f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
378f968c6a4SSeongJae ParkDescription:	Reading this file returns the number of regions that the action
379f968c6a4SSeongJae Park		of the scheme has successfully applied.
380f968c6a4SSeongJae Park
381f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_applied
382f968c6a4SSeongJae ParkDate:		Mar 2022
383f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
384f968c6a4SSeongJae ParkDescription:	Reading this file returns the total size of regions that the
385f968c6a4SSeongJae Park		action of the scheme has successfully applied in bytes.
386f968c6a4SSeongJae Park
387f968c6a4SSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/qt_exceeds
388f968c6a4SSeongJae ParkDate:		Mar 2022
389f968c6a4SSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
390f968c6a4SSeongJae ParkDescription:	Reading this file returns the number of the exceed events of
391f968c6a4SSeongJae Park		the scheme's quotas.
3921b0006daSSeongJae Park
393e91b5ccfSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/total_bytes
394e91b5ccfSSeongJae ParkDate:		Jul 2023
395e91b5ccfSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
396e91b5ccfSSeongJae ParkDescription:	Reading this file returns the total amount of memory that
397e91b5ccfSSeongJae Park		corresponding DAMON-based Operation Scheme's action has tried
398e91b5ccfSSeongJae Park		to be applied.
399e91b5ccfSSeongJae Park
4001b0006daSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/start
4011b0006daSSeongJae ParkDate:		Oct 2022
4021b0006daSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
4031b0006daSSeongJae ParkDescription:	Reading this file returns the start address of a memory region
4041b0006daSSeongJae Park		that corresponding DAMON-based Operation Scheme's action has
4051b0006daSSeongJae Park		tried to be applied.
4061b0006daSSeongJae Park
4071b0006daSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/end
4081b0006daSSeongJae ParkDate:		Oct 2022
4091b0006daSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
4101b0006daSSeongJae ParkDescription:	Reading this file returns the end address of a memory region
4111b0006daSSeongJae Park		that corresponding DAMON-based Operation Scheme's action has
4121b0006daSSeongJae Park		tried to be applied.
4131b0006daSSeongJae Park
4141b0006daSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/nr_accesses
4151b0006daSSeongJae ParkDate:		Oct 2022
4161b0006daSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
4171b0006daSSeongJae ParkDescription:	Reading this file returns the 'nr_accesses' of a memory region
4181b0006daSSeongJae Park		that corresponding DAMON-based Operation Scheme's action has
4191b0006daSSeongJae Park		tried to be applied.
4201b0006daSSeongJae Park
4211b0006daSSeongJae ParkWhat:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/age
4221b0006daSSeongJae ParkDate:		Oct 2022
4231b0006daSSeongJae ParkContact:	SeongJae Park <sj@kernel.org>
4241b0006daSSeongJae ParkDescription:	Reading this file returns the 'age' of a memory region that
4251b0006daSSeongJae Park		corresponding DAMON-based Operation Scheme's action has tried
4261b0006daSSeongJae Park		to be applied.
427