xref: /linux/Documentation/ABI/testing/sysfs-kernel-mm-damon (revision 7203ca412fc8e8a0588e9adc0f777d3163f8dff3)
1what:		/sys/kernel/mm/damon/
2Date:		Mar 2022
3Contact:	SeongJae Park <sj@kernel.org>
4Description:	Interface for Data Access MONitoring (DAMON).  Contains files
5		for controlling DAMON.  For more details on DAMON itself,
6		please refer to Documentation/admin-guide/mm/damon/index.rst.
7
8What:		/sys/kernel/mm/damon/admin/
9Date:		Mar 2022
10Contact:	SeongJae Park <sj@kernel.org>
11Description:	Interface for privileged users of DAMON.  Contains files for
12		controlling DAMON that aimed to be used by privileged users.
13
14What:		/sys/kernel/mm/damon/admin/kdamonds/nr_kdamonds
15Date:		Mar 2022
16Contact:	SeongJae Park <sj@kernel.org>
17Description:	Writing a number 'N' to this file creates the number of
18		directories for controlling each DAMON worker thread (kdamond)
19		named '0' to 'N-1' under the kdamonds/ directory.
20
21What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/state
22Date:		Mar 2022
23Contact:	SeongJae Park <sj@kernel.org>
24Description:	Writing 'on' or 'off' to this file makes the kdamond starts or
25		stops, respectively.  Reading the file returns the keywords
26		based on the current status.  Writing 'commit' to this file
27		makes the kdamond reads the user inputs in the sysfs files
28		except 'state' again.  Writing 'commit_schemes_quota_goals' to
29		this file makes the kdamond reads the quota goal files again.
30		Writing 'update_schemes_stats' to the file updates contents of
31		schemes stats files of the kdamond.  Writing
32		'update_schemes_tried_regions' to the file updates contents of
33		'tried_regions' directory of every scheme directory of this
34		kdamond.  Writing 'update_schemes_tried_bytes' to the file
35		updates only '.../tried_regions/total_bytes' files of this
36		kdamond.  Writing 'clear_schemes_tried_regions' to the file
37		removes contents of the 'tried_regions' directory.  Writing
38		'update_schemes_effective_quotas' to the file updates
39		'.../quotas/effective_bytes' files of this kdamond.
40
41What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/pid
42Date:		Mar 2022
43Contact:	SeongJae Park <sj@kernel.org>
44Description:	Reading this file returns the pid of the kdamond if it is
45		running.
46
47What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/refresh_ms
48Date:		Jul 2025
49Contact:	SeongJae Park <sj@kernel.org>
50Description:	Writing a value to this file sets the time interval for
51		automatic DAMON status file contents update.  Writing '0'
52		disables the update.  Reading this file returns the value.
53
54What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/nr_contexts
55Date:		Mar 2022
56Contact:	SeongJae Park <sj@kernel.org>
57Description:	Writing a number 'N' to this file creates the number of
58		directories for controlling each DAMON context named '0' to
59		'N-1' under the contexts/ directory.
60
61What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/avail_operations
62Date:		Apr 2022
63Contact:	SeongJae Park <sj@kernel.org>
64Description:	Reading this file returns the available monitoring operations
65		sets on the currently running kernel.
66
67What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/operations
68Date:		Mar 2022
69Contact:	SeongJae Park <sj@kernel.org>
70Description:	Writing a keyword for a monitoring operations set ('vaddr' for
71		virtual address spaces monitoring, 'fvaddr' for fixed virtual
72		address ranges monitoring, and 'paddr' for the physical address
73		space monitoring) to this file makes the context to use the
74		operations set.  Reading the file returns the keyword for the
75		operations set the context is set to use.
76
77		Note that only the operations sets that listed in
78		'avail_operations' file are valid inputs.
79
80What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/addr_unit
81Date:		Aug 2025
82Contact:	SeongJae Park <sj@kernel.org>
83Description:	Writing an integer to this file sets the 'address unit'
84		parameter of the given operations set of the context.  Reading
85		the file returns the last-written 'address unit' value.
86
87What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/sample_us
88Date:		Mar 2022
89Contact:	SeongJae Park <sj@kernel.org>
90Description:	Writing a value to this file sets the sampling interval of the
91		DAMON context in microseconds as the value.  Reading this file
92		returns the value.
93
94What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/aggr_us
95Date:		Mar 2022
96Contact:	SeongJae Park <sj@kernel.org>
97Description:	Writing a value to this file sets the aggregation interval of
98		the DAMON context in microseconds as the value.  Reading this
99		file returns the value.
100
101What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/update_us
102Date:		Mar 2022
103Contact:	SeongJae Park <sj@kernel.org>
104Description:	Writing a value to this file sets the update interval of the
105		DAMON context in microseconds as the value.  Reading this file
106		returns the value.
107
108What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intrvals_goal/access_bp
109Date:		Feb 2025
110Contact:	SeongJae Park <sj@kernel.org>
111Description:	Writing a value to this file sets the monitoring intervals
112		auto-tuning target DAMON-observed access events ratio within
113		the given time interval (aggrs in same directory), in bp
114		(1/10,000).  Reading this file returns the value.
115
116What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intrvals_goal/aggrs
117Date:		Feb 2025
118Contact:	SeongJae Park <sj@kernel.org>
119Description:	Writing a value to this file sets the time interval to achieve
120		the monitoring intervals auto-tuning target DAMON-observed
121		access events ratio (access_bp in same directory) within.
122		Reading this file returns the value.
123
124What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intrvals_goal/min_sample_us
125Date:		Feb 2025
126Contact:	SeongJae Park <sj@kernel.org>
127Description:	Writing a value to this file sets the minimum value of
128		auto-tuned sampling interval in microseconds.  Reading this
129		file returns the value.
130
131What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intrvals_goal/max_sample_us
132Date:		Feb 2025
133Contact:	SeongJae Park <sj@kernel.org>
134Description:	Writing a value to this file sets the maximum value of
135		auto-tuned sampling interval in microseconds.  Reading this
136		file returns the value.
137
138What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/min
139
140WDate:		Mar 2022
141Contact:	SeongJae Park <sj@kernel.org>
142Description:	Writing a value to this file sets the minimum number of
143		monitoring regions of the DAMON context as the value.  Reading
144		this file returns the value.
145
146What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/max
147Date:		Mar 2022
148Contact:	SeongJae Park <sj@kernel.org>
149Description:	Writing a value to this file sets the maximum number of
150		monitoring regions of the DAMON context as the value.  Reading
151		this file returns the value.
152
153What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/nr_targets
154Date:		Mar 2022
155Contact:	SeongJae Park <sj@kernel.org>
156Description:	Writing a number 'N' to this file creates the number of
157		directories for controlling each DAMON target of the context
158		named '0' to 'N-1' under the contexts/ directory.
159
160What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/pid_target
161Date:		Mar 2022
162Contact:	SeongJae Park <sj@kernel.org>
163Description:	Writing to and reading from this file sets and gets the pid of
164		the target process if the context is for virtual address spaces
165		monitoring, respectively.
166
167What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/obsolete_target
168Date:		Oct 2025
169Contact:	SeongJae Park <sj@kernel.org>
170Description:	Writing to and reading from this file sets and gets the
171		obsoleteness of the matching parameters commit destination
172		target.
173
174What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/nr_regions
175Date:		Mar 2022
176Contact:	SeongJae Park <sj@kernel.org>
177Description:	Writing a number 'N' to this file creates the number of
178		directories for setting each DAMON target memory region of the
179		context named '0' to 'N-1' under the regions/ directory.  In
180		case of the virtual address space monitoring, DAMON
181		automatically sets the target memory region based on the target
182		processes' mappings.
183
184What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/start
185Date:		Mar 2022
186Contact:	SeongJae Park <sj@kernel.org>
187Description:	Writing to and reading from this file sets and gets the start
188		address of the monitoring region.
189
190What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/end
191Date:		Mar 2022
192Contact:	SeongJae Park <sj@kernel.org>
193Description:	Writing to and reading from this file sets and gets the end
194		address of the monitoring region.
195
196What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/nr_schemes
197Date:		Mar 2022
198Contact:	SeongJae Park <sj@kernel.org>
199Description:	Writing a number 'N' to this file creates the number of
200		directories for controlling each DAMON-based operation scheme
201		of the context named '0' to 'N-1' under the schemes/ directory.
202
203What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/action
204Date:		Mar 2022
205Contact:	SeongJae Park <sj@kernel.org>
206Description:	Writing to and reading from this file sets and gets the action
207		of the scheme.
208
209What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/target_nid
210Date:		Jun 2024
211Contact:	SeongJae Park <sj@kernel.org>
212Description:	Action's target NUMA node id.  Supported by only relevant
213		actions.
214
215What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/apply_interval_us
216Date:		Sep 2023
217Contact:	SeongJae Park <sj@kernel.org>
218Description:	Writing a value to this file sets the action apply interval of
219		the scheme in microseconds.  Reading this file returns the
220		value.
221
222What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/min
223Date:		Mar 2022
224Contact:	SeongJae Park <sj@kernel.org>
225Description:	Writing to and reading from this file sets and gets the minimum
226		size of the scheme's target regions in bytes.
227
228What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/max
229Date:		Mar 2022
230Contact:	SeongJae Park <sj@kernel.org>
231Description:	Writing to and reading from this file sets and gets the maximum
232		size of the scheme's target regions in bytes.
233
234What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/min
235Date:		Mar 2022
236Contact:	SeongJae Park <sj@kernel.org>
237Description:	Writing to and reading from this file sets and gets the manimum
238		'nr_accesses' of the scheme's target regions.
239
240What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/max
241Date:		Mar 2022
242Contact:	SeongJae Park <sj@kernel.org>
243Description:	Writing to and reading from this file sets and gets the maximum
244		'nr_accesses' of the scheme's target regions.
245
246What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/min
247Date:		Mar 2022
248Contact:	SeongJae Park <sj@kernel.org>
249Description:	Writing to and reading from this file sets and gets the minimum
250		'age' of the scheme's target regions.
251
252What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/max
253Date:		Mar 2022
254Contact:	SeongJae Park <sj@kernel.org>
255Description:	Writing to and reading from this file sets and gets the maximum
256		'age' of the scheme's target regions.
257
258What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/ms
259Date:		Mar 2022
260Contact:	SeongJae Park <sj@kernel.org>
261Description:	Writing to and reading from this file sets and gets the time
262		quota of the scheme in milliseconds.
263
264What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/bytes
265Date:		Mar 2022
266Contact:	SeongJae Park <sj@kernel.org>
267Description:	Writing to and reading from this file sets and gets the size
268		quota of the scheme in bytes.
269
270What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/effective_bytes
271Date:		Feb 2024
272Contact:	SeongJae Park <sj@kernel.org>
273Description:	Reading from this file gets the effective size quota of the
274		scheme in bytes, which adjusted for the time quota and goals.
275
276What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/reset_interval_ms
277Date:		Mar 2022
278Contact:	SeongJae Park <sj@kernel.org>
279Description:	Writing to and reading from this file sets and gets the quotas
280		charge reset interval of the scheme in milliseconds.
281
282What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/nr_goals
283Date:		Nov 2023
284Contact:	SeongJae Park <sj@kernel.org>
285Description:	Writing a number 'N' to this file creates the number of
286		directories for setting automatic tuning of the scheme's
287		aggressiveness named '0' to 'N-1' under the goals/ directory.
288
289What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_metric
290Date:		Feb 2024
291Contact:	SeongJae Park <sj@kernel.org>
292Description:	Writing to and reading from this file sets and gets the quota
293		auto-tuning goal metric.
294
295What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_value
296Date:		Nov 2023
297Contact:	SeongJae Park <sj@kernel.org>
298Description:	Writing to and reading from this file sets and gets the target
299		value of the goal metric.
300
301What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/current_value
302Date:		Nov 2023
303Contact:	SeongJae Park <sj@kernel.org>
304Description:	Writing to and reading from this file sets and gets the current
305		value of the goal metric.
306
307What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/nid
308Date:		Apr 2025
309Contact:	SeongJae Park <sj@kernel.org>
310Description:	Writing to and reading from this file sets and gets the nid
311		parameter of the goal.
312
313What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/path
314Date:		Oct 2025
315Contact:	SeongJae Park <sj@kernel.org>
316Description:	Writing to and reading from this file sets and gets the path
317		parameter of the goal.
318
319What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/sz_permil
320Date:		Mar 2022
321Contact:	SeongJae Park <sj@kernel.org>
322Description:	Writing to and reading from this file sets and gets the
323		under-quota limit regions prioritization weight for 'size' in
324		permil.
325
326What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/nr_accesses_permil
327Date:		Mar 2022
328Contact:	SeongJae Park <sj@kernel.org>
329Description:	Writing to and reading from this file sets and gets the
330		under-quota limit regions prioritization weight for
331		'nr_accesses' in permil.
332
333What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/age_permil
334Date:		Mar 2022
335Contact:	SeongJae Park <sj@kernel.org>
336Description:	Writing to and reading from this file sets and gets the
337		under-quota limit regions prioritization weight for 'age' in
338		permil.
339
340What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/metric
341Date:		Mar 2022
342Contact:	SeongJae Park <sj@kernel.org>
343Description:	Writing to and reading from this file sets and gets the metric
344		of the watermarks for the scheme.  The writable/readable
345		keywords for this file are 'none' for disabling the watermarks
346		feature, or 'free_mem_rate' for the system's global free memory
347		rate in permil.
348
349What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/interval_us
350Date:		Mar 2022
351Contact:	SeongJae Park <sj@kernel.org>
352Description:	Writing to and reading from this file sets and gets the metric
353		check interval of the watermarks for the scheme in
354		microseconds.
355
356What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/high
357Date:		Mar 2022
358Contact:	SeongJae Park <sj@kernel.org>
359Description:	Writing to and reading from this file sets and gets the high
360		watermark of the scheme in permil.
361
362What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/mid
363Date:		Mar 2022
364Contact:	SeongJae Park <sj@kernel.org>
365Description:	Writing to and reading from this file sets and gets the mid
366		watermark of the scheme in permil.
367
368What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/low
369Date:		Mar 2022
370Contact:	SeongJae Park <sj@kernel.org>
371Description:	Writing to and reading from this file sets and gets the low
372		watermark of the scheme in permil.
373
374What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/nr_filters
375Date:		Dec 2022
376Contact:	SeongJae Park <sj@kernel.org>
377Description:	Writing a number 'N' to this file creates the number of
378		directories for setting filters of the scheme named '0' to
379		'N-1' under the filters/ directory.
380
381What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/type
382Date:		Dec 2022
383Contact:	SeongJae Park <sj@kernel.org>
384Description:	Writing to and reading from this file sets and gets the type of
385		the memory of the interest.  'anon' for anonymous pages,
386		'memcg' for specific memory cgroup, 'young' for young pages,
387		'addr' for address range (an open-ended interval), or 'target'
388		for DAMON monitoring target can be written and read.
389
390What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/memcg_path
391Date:		Dec 2022
392Contact:	SeongJae Park <sj@kernel.org>
393Description:	If 'memcg' is written to the 'type' file, writing to and
394		reading from this file sets and gets the path to the memory
395		cgroup of the interest.
396
397What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/addr_start
398Date:		Jul 2023
399Contact:	SeongJae Park <sj@kernel.org>
400Description:	If 'addr' is written to the 'type' file, writing to or reading
401		from this file sets or gets the start address of the address
402		range for the filter.
403
404What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/addr_end
405Date:		Jul 2023
406Contact:	SeongJae Park <sj@kernel.org>
407Description:	If 'addr' is written to the 'type' file, writing to or reading
408		from this file sets or gets the end address of the address
409		range for the filter.
410
411What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/min
412Date:		Feb 2025
413Contact:	SeongJae Park <sj@kernel.org>
414Description:	If 'hugepage_size' is written to the 'type' file, writing to
415		or reading from this file sets or gets the minimum size of the
416		hugepage for the filter.
417
418What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/max
419Date:		Feb 2025
420Contact:	SeongJae Park <sj@kernel.org>
421Description:	If 'hugepage_size' is written to the 'type' file, writing to
422		or reading from this file sets or gets the maximum size of the
423		hugepage for the filter.
424
425What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/target_idx
426Date:		Dec 2022
427Contact:	SeongJae Park <sj@kernel.org>
428Description:	If 'target' is written to the 'type' file, writing to or
429		reading from this file sets or gets the index of the DAMON
430		monitoring target of the interest.
431
432What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/matching
433Date:		Dec 2022
434Contact:	SeongJae Park <sj@kernel.org>
435Description:	Writing 'Y' or 'N' to this file sets whether the filter is for
436		the memory of the 'type', or all except the 'type'.
437
438What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters/<F>/allow
439Date:		Jan 2025
440Contact:	SeongJae Park <sj@kernel.org>
441Description:	Writing 'Y' or 'N' to this file sets whether to allow or reject
442		applying the scheme's action to the memory that satisfies the
443		'type' and the 'matching' of the directory.
444
445What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters
446Date:		Feb 2025
447Contact:	SeongJae Park <sj@kernel.org>
448Description:	Directory for DAMON core layer-handled DAMOS filters.  Files
449		under this directory works same to those of
450		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters
451		directory.
452
453What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/ops_filters
454Date:		Feb 2025
455Contact:	SeongJae Park <sj@kernel.org>
456Description:	Directory for DAMON operations set layer-handled DAMOS filters.
457		Files under this directory works same to those of
458		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters
459		directory.
460
461What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/dests/nr_dests
462Date:		Jul 2025
463Contact:	SeongJae Park <sj@kernel.org>
464Description:	Writing a number 'N' to this file creates the number of
465		directories for setting action destinations of the scheme named
466		'0' to 'N-1' under the dests/ directory.
467
468What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/dests/<D>/id
469Date:		Jul 2025
470Contact:	SeongJae Park <sj@kernel.org>
471Description:	Writing to and reading from this file sets and gets the id of
472		the DAMOS action destination.  For DAMOS_MIGRATE_{HOT,COLD}
473		actions, the destination node's node id can be written and
474		read.
475
476What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/dests/<D>/weight
477Date:		Jul 2025
478Contact:	SeongJae Park <sj@kernel.org>
479Description:	Writing to and reading from this file sets and gets the weight
480		of the DAMOS action destination to select as the destination of
481		each action among the destinations.
482
483What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_tried
484Date:		Mar 2022
485Contact:	SeongJae Park <sj@kernel.org>
486Description:	Reading this file returns the number of regions that the action
487		of the scheme has tried to be applied.
488
489What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_tried
490Date:		Mar 2022
491Contact:	SeongJae Park <sj@kernel.org>
492Description:	Reading this file returns the total size of regions that the
493		action of the scheme has tried to be applied in bytes.
494
495What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_applied
496Date:		Mar 2022
497Contact:	SeongJae Park <sj@kernel.org>
498Description:	Reading this file returns the number of regions that the action
499		of the scheme has successfully applied.
500
501What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_applied
502Date:		Mar 2022
503Contact:	SeongJae Park <sj@kernel.org>
504Description:	Reading this file returns the total size of regions that the
505		action of the scheme has successfully applied in bytes.
506
507What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_ops_filter_passed
508Date:		Dec 2024
509Contact:	SeongJae Park <sj@kernel.org>
510Description:	Reading this file returns the total size of memory that passed
511		DAMON operations layer-handled filters of the scheme in bytes.
512
513What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/qt_exceeds
514Date:		Mar 2022
515Contact:	SeongJae Park <sj@kernel.org>
516Description:	Reading this file returns the number of the exceed events of
517		the scheme's quotas.
518
519What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/total_bytes
520Date:		Jul 2023
521Contact:	SeongJae Park <sj@kernel.org>
522Description:	Reading this file returns the total amount of memory that
523		corresponding DAMON-based Operation Scheme's action has tried
524		to be applied.
525
526What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/start
527Date:		Oct 2022
528Contact:	SeongJae Park <sj@kernel.org>
529Description:	Reading this file returns the start address of a memory region
530		that corresponding DAMON-based Operation Scheme's action has
531		tried to be applied.
532
533What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/end
534Date:		Oct 2022
535Contact:	SeongJae Park <sj@kernel.org>
536Description:	Reading this file returns the end address of a memory region
537		that corresponding DAMON-based Operation Scheme's action has
538		tried to be applied.
539
540What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/nr_accesses
541Date:		Oct 2022
542Contact:	SeongJae Park <sj@kernel.org>
543Description:	Reading this file returns the 'nr_accesses' of a memory region
544		that corresponding DAMON-based Operation Scheme's action has
545		tried to be applied.
546
547What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/age
548Date:		Oct 2022
549Contact:	SeongJae Park <sj@kernel.org>
550Description:	Reading this file returns the 'age' of a memory region that
551		corresponding DAMON-based Operation Scheme's action has tried
552		to be applied.
553
554What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/sz_filter_passed
555Date:		Dec 2024
556Contact:	SeongJae Park <sj@kernel.org>
557Description:	Reading this file returns the size of the memory in the region
558		that passed DAMON operations layer-handled filters of the
559		scheme in bytes.
560