| what: /sys/kernel/mm/damon/ | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Interface for Data Access MONitoring (DAMON). Contains files | |
| for controlling DAMON. For more details on DAMON itself, | |
| please refer to Documentation/admin-guide/mm/damon/index.rst. | |
| What: /sys/kernel/mm/damon/admin/ | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Interface for privileged users of DAMON. Contains files for | |
| controlling DAMON that aimed to be used by privileged users. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/nr_kdamonds | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a number 'N' to this file creates the number of | |
| directories for controlling each DAMON worker thread (kdamond) | |
| named '0' to 'N-1' under the kdamonds/ directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/state | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing 'on' or 'off' to this file makes the kdamond starts or | |
| stops, respectively. Reading the file returns the keywords | |
| based on the current status. Writing 'commit' to this file | |
| makes the kdamond reads the user inputs in the sysfs files | |
| except 'state' again. Writing 'commit_schemes_quota_goals' to | |
| this file makes the kdamond reads the quota goal files again. | |
| Writing 'update_schemes_stats' to the file updates contents of | |
| schemes stats files of the kdamond. Writing | |
| 'update_schemes_tried_regions' to the file updates contents of | |
| 'tried_regions' directory of every scheme directory of this | |
| kdamond. Writing 'update_schemes_tried_bytes' to the file | |
| updates only '.../tried_regions/total_bytes' files of this | |
| kdamond. Writing 'clear_schemes_tried_regions' to the file | |
| removes contents of the 'tried_regions' directory. Writing | |
| 'update_schemes_effective_quotas' to the file updates | |
| '.../quotas/effective_bytes' files of this kdamond. Writing | |
| 'update_tuned_intervals' to the file updates 'sample_us' and | |
| 'aggr_us' files under 'monitoring_attrs/intervals' with the | |
| auto-tuned sampling and aggregation intervals. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/pid | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the pid of the kdamond if it is | |
| running. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/refresh_ms | |
| Date: Jul 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a value to this file sets the time interval for | |
| automatic DAMON status file contents update. Writing '0' | |
| disables the update. Reading this file returns the value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/nr_contexts | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a number 'N' to this file creates the number of | |
| directories for controlling each DAMON context named '0' to | |
| 'N-1' under the contexts/ directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/avail_operations | |
| Date: Apr 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the available monitoring operations | |
| sets on the currently running kernel. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/operations | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a keyword for a monitoring operations set ('vaddr' for | |
| virtual address spaces monitoring, 'fvaddr' for fixed virtual | |
| address ranges monitoring, and 'paddr' for the physical address | |
| space monitoring) to this file makes the context to use the | |
| operations set. Reading the file returns the keyword for the | |
| operations set the context is set to use. | |
| Note that only the operations sets that listed in | |
| 'avail_operations' file are valid inputs. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/addr_unit | |
| Date: Aug 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing an integer to this file sets the 'address unit' | |
| parameter of the given operations set of the context. Reading | |
| the file returns the last-written 'address unit' value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/pause | |
| Date: Mar 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a boolean keyword to this file sets the 'pause' request | |
| parameter for the context. Reading the file returns the | |
| last-written 'pause' value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/sample_us | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a value to this file sets the sampling interval of the | |
| DAMON context in microseconds as the value. Reading this file | |
| returns the value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/aggr_us | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a value to this file sets the aggregation interval of | |
| the DAMON context in microseconds as the value. Reading this | |
| file returns the value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/update_us | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a value to this file sets the update interval of the | |
| DAMON context in microseconds as the value. Reading this file | |
| returns the value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intervals_goal/access_bp | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a value to this file sets the monitoring intervals | |
| auto-tuning target DAMON-observed access events ratio within | |
| the given time interval (aggrs in same directory), in bp | |
| (1/10,000). Reading this file returns the value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intervals_goal/aggrs | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a value to this file sets the time interval to achieve | |
| the monitoring intervals auto-tuning target DAMON-observed | |
| access events ratio (access_bp in same directory) within. | |
| Reading this file returns the value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intervals_goal/min_sample_us | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a value to this file sets the minimum value of | |
| auto-tuned sampling interval in microseconds. Reading this | |
| file returns the value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/intervals_goal/max_sample_us | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a value to this file sets the maximum value of | |
| auto-tuned sampling interval in microseconds. Reading this | |
| file returns the value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/min | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a value to this file sets the minimum number of | |
| monitoring regions of the DAMON context as the value. Reading | |
| this file returns the value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/max | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a value to this file sets the maximum number of | |
| monitoring regions of the DAMON context as the value. Reading | |
| this file returns the value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/nr_probes | |
| Date: May 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a number 'N' to this file creates the number of | |
| directories for each DAMON probe named '0' to 'N-1' under the | |
| probes/ directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/weight | |
| Date: Jul 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the | |
| per-probe attribute weight. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/filters/nr_filters | |
| Date: May 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a number 'N' to this file creates the number of | |
| directories for each DAMON probe filter named '0' to 'N-1' | |
| under the filters/ directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/filters/<F>/type | |
| Date: May 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the type of | |
| the memory of the interest. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/filters/<F>/path | |
| Date: May 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: If 'memcg' is written to the 'type' file, writing to and | |
| reading from this file sets and gets the path to the memory | |
| cgroup of the interest. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/filters/<F>/matching | |
| Date: May 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing 'Y' or 'N' to this file sets whether the filter is for | |
| the memory of the 'type', or all except the 'type'. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/probes/<P>/filters/<F>/allow | |
| Date: May 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing 'Y' or 'N' to this file sets whether to allow or reject | |
| hitting the probe for the memory that satisfies the 'type' and | |
| the 'matching' of the directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/nr_targets | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a number 'N' to this file creates the number of | |
| directories for controlling each DAMON target of the context | |
| named '0' to 'N-1' under the contexts/ directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/pid_target | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the pid of | |
| the target process if the context is for virtual address spaces | |
| monitoring, respectively. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/obsolete_target | |
| Date: Oct 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the | |
| obsoleteness of the matching parameters commit destination | |
| target. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/nr_regions | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a number 'N' to this file creates the number of | |
| directories for setting each DAMON target memory region of the | |
| context named '0' to 'N-1' under the regions/ directory. In | |
| case of the virtual address space monitoring, DAMON | |
| automatically sets the target memory region based on the target | |
| processes' mappings. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/start | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the start | |
| address of the monitoring region. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/end | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the end | |
| address of the monitoring region. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/nr_schemes | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a number 'N' to this file creates the number of | |
| directories for controlling each DAMON-based operation scheme | |
| of the context named '0' to 'N-1' under the schemes/ directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/action | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the action | |
| of the scheme. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/target_nid | |
| Date: Jun 2024 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Action's target NUMA node id. Supported by only relevant | |
| actions. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/apply_interval_us | |
| Date: Sep 2023 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a value to this file sets the action apply interval of | |
| the scheme in microseconds. Reading this file returns the | |
| value. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/min | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the minimum | |
| size of the scheme's target regions in bytes. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/max | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the maximum | |
| size of the scheme's target regions in bytes. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/min | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the minimum | |
| 'nr_accesses' of the scheme's target regions. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/max | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the maximum | |
| 'nr_accesses' of the scheme's target regions. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/min | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the minimum | |
| 'age' of the scheme's target regions. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/max | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the maximum | |
| 'age' of the scheme's target regions. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/ms | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the time | |
| quota of the scheme in milliseconds. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/bytes | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the size | |
| quota of the scheme in bytes. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/effective_bytes | |
| Date: Feb 2024 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading from this file gets the effective size quota of the | |
| scheme in bytes, which adjusted for the time quota and goals. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/reset_interval_ms | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the quotas | |
| charge reset interval of the scheme in milliseconds. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/nr_goals | |
| Date: Nov 2023 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a number 'N' to this file creates the number of | |
| directories for setting automatic tuning of the scheme's | |
| aggressiveness named '0' to 'N-1' under the goals/ directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_metric | |
| Date: Feb 2024 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the quota | |
| auto-tuning goal metric. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/target_value | |
| Date: Nov 2023 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the target | |
| value of the goal metric. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/current_value | |
| Date: Nov 2023 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the current | |
| value of the goal metric. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/nid | |
| Date: Apr 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the nid | |
| parameter of the goal. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goals/<G>/path | |
| Date: Oct 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the path | |
| parameter of the goal. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/goal_tuner | |
| Date: Mar 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the | |
| goal-based effective quota auto-tuning algorithm to use. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/fail_charge_num | |
| Date: Mar 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the | |
| action-failed memory quota charging ratio numerator. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/fail_charge_denom | |
| Date: Mar 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the | |
| action-failed memory quota charging ratio denominator. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/sz_permil | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the | |
| under-quota limit regions prioritization weight for 'size' in | |
| permil. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/nr_accesses_permil | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the | |
| under-quota limit regions prioritization weight for | |
| 'nr_accesses' in permil. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/age_permil | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the | |
| under-quota limit regions prioritization weight for 'age' in | |
| permil. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/metric | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the metric | |
| of the watermarks for the scheme. The writable/readable | |
| keywords for this file are 'none' for disabling the watermarks | |
| feature, or 'free_mem_rate' for the system's global free memory | |
| rate in permil. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/interval_us | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the metric | |
| check interval of the watermarks for the scheme in | |
| microseconds. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/high | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the high | |
| watermark of the scheme in permil. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/mid | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the mid | |
| watermark of the scheme in permil. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/low | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the low | |
| watermark of the scheme in permil. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Directory for DAMON core layer-handled DAMOS filters. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/nr_filters | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a number 'N' to this file creates the number of | |
| directories for setting filters of the scheme named '0' to | |
| 'N-1' under the core_filters/ directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/type | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the type of | |
| the memory of the interest. 'anon' for anonymous pages, | |
| 'memcg' for specific memory cgroup, 'young' for young pages, | |
| 'addr' for address range (an open-ended interval), or 'target' | |
| for DAMON monitoring target can be written and read. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/memcg_path | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: If 'memcg' is written to the 'type' file, writing to and | |
| reading from this file sets and gets the path to the memory | |
| cgroup of the interest. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/addr_start | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: If 'addr' is written to the 'type' file, writing to or reading | |
| from this file sets or gets the start address of the address | |
| range for the filter. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/addr_end | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: If 'addr' is written to the 'type' file, writing to or reading | |
| from this file sets or gets the end address of the address | |
| range for the filter. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/min | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: If 'hugepage_size' is written to the 'type' file, writing to | |
| or reading from this file sets or gets the minimum size of the | |
| hugepage for the filter. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/max | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: If 'hugepage_size' is written to the 'type' file, writing to | |
| or reading from this file sets or gets the maximum size of the | |
| hugepage for the filter. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/damon_target_idx | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: If 'target' is written to the 'type' file, writing to or | |
| reading from this file sets or gets the index of the DAMON | |
| monitoring target of the interest. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/matching | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing 'Y' or 'N' to this file sets whether the filter is for | |
| the memory of the 'type', or all except the 'type'. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters/<F>/allow | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing 'Y' or 'N' to this file sets whether to allow or reject | |
| applying the scheme's action to the memory that satisfies the | |
| 'type' and the 'matching' of the directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/ops_filters | |
| Date: Feb 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Directory for DAMON operations set layer-handled DAMOS filters. | |
| Files under this directory works same to those of | |
| /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/core_filters | |
| directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/filters | |
| Date: Dec 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Directory for DAMOS filters. Files under this directory works | |
| same to those of | |
| /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/{core,ops}_filters | |
| directory. This is deprecated. Use the core_filters and | |
| ops_filters instead. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/dests/nr_dests | |
| Date: Jul 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a number 'N' to this file creates the number of | |
| directories for setting action destinations of the scheme named | |
| '0' to 'N-1' under the dests/ directory. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/dests/<D>/id | |
| Date: Jul 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the id of | |
| the DAMOS action destination. For DAMOS_MIGRATE_{HOT,COLD} | |
| actions, the destination node's node id can be written and | |
| read. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/dests/<D>/weight | |
| Date: Jul 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing to and reading from this file sets and gets the weight | |
| of the DAMOS action destination to select as the destination of | |
| each action among the destinations. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_tried | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the number of regions that the action | |
| of the scheme has tried to be applied. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_tried | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the total size of regions that the | |
| action of the scheme has tried to be applied in bytes. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_applied | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the number of regions that the action | |
| of the scheme has successfully applied. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_applied | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the total size of regions that the | |
| action of the scheme has successfully applied in bytes. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_ops_filter_passed | |
| Date: Dec 2024 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the total size of memory that passed | |
| DAMON operations layer-handled filters of the scheme in bytes. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/qt_exceeds | |
| Date: Mar 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the number of the exceed events of | |
| the scheme's quotas. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_snapshots | |
| Date: Dec 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the total number of DAMON snapshots | |
| that the scheme has tried to be applied. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/max_nr_snapshots | |
| Date: Dec 2025 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Writing a number to this file sets the upper limit of | |
| nr_snapshots that deactivates the scheme when the limit is | |
| reached or exceeded. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/total_bytes | |
| Date: Jul 2023 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the total amount of memory that | |
| corresponding DAMON-based Operation Scheme's action has tried | |
| to be applied. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/start | |
| Date: Oct 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the start address of a memory region | |
| that corresponding DAMON-based Operation Scheme's action has | |
| tried to be applied. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/end | |
| Date: Oct 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the end address of a memory region | |
| that corresponding DAMON-based Operation Scheme's action has | |
| tried to be applied. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/nr_accesses | |
| Date: Oct 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the 'nr_accesses' of a memory region | |
| that corresponding DAMON-based Operation Scheme's action has | |
| tried to be applied. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/age | |
| Date: Oct 2022 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the 'age' of a memory region that | |
| corresponding DAMON-based Operation Scheme's action has tried | |
| to be applied. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/sz_filter_passed | |
| Date: Dec 2024 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the size of the memory in the region | |
| that passed DAMON operations layer-handled filters of the | |
| scheme in bytes. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/probes/ | |
| Date: May 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Directory for DAMON data-attribute monitoring probes of the | |
| region. | |
| What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/tried_regions/<R>/probes/<P>/hits | |
| Date: May 2026 | |
| Contact: SJ Park <sj@kernel.org> | |
| Description: Reading this file returns the number of data-attribute | |
| monitoring probe-hit positive samples of the region. |