286 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			286 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| what:		/sys/kernel/mm/damon/
 | |
| Date:		Mar 2022
 | |
| Contact:	SeongJae 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:	SeongJae 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:	SeongJae 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:	SeongJae 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 'update_schemes_stats' to the
 | |
| 		file updates contents of schemes stats files of the kdamond.
 | |
| 
 | |
| What:		/sys/kernel/mm/damon/admin/kdamonds/<K>/pid
 | |
| Date:		Mar 2022
 | |
| Contact:	SeongJae 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>/contexts/nr_contexts
 | |
| Date:		Mar 2022
 | |
| Contact:	SeongJae 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:	SeongJae 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:	SeongJae 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>/monitoring_attrs/intervals/sample_us
 | |
| Date:		Mar 2022
 | |
| Contact:	SeongJae 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:	SeongJae 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:	SeongJae 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/nr_regions/min
 | |
| 
 | |
| WDate:		Mar 2022
 | |
| Contact:	SeongJae 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:	SeongJae 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>/targets/nr_targets
 | |
| Date:		Mar 2022
 | |
| Contact:	SeongJae 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:	SeongJae 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>/regions/nr_regions
 | |
| Date:		Mar 2022
 | |
| Contact:	SeongJae 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:	SeongJae 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:	SeongJae 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:	SeongJae 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:	SeongJae 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>/access_pattern/sz/min
 | |
| Date:		Mar 2022
 | |
| Contact:	SeongJae Park <sj@kernel.org>
 | |
| Description:	Writing to and reading from this file sets and gets the mimimum
 | |
| 		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:	SeongJae 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:	SeongJae Park <sj@kernel.org>
 | |
| Description:	Writing to and reading from this file sets and gets the manimum
 | |
| 		'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:	SeongJae 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:	SeongJae 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:	SeongJae 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:	SeongJae 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:	SeongJae 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/reset_interval_ms
 | |
| Date:		Mar 2022
 | |
| Contact:	SeongJae 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/weights/sz_permil
 | |
| Date:		Mar 2022
 | |
| Contact:	SeongJae 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:	SeongJae 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:	SeongJae 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:	SeongJae 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:	SeongJae 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:	SeongJae 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:	SeongJae 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:	SeongJae 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>/stats/nr_tried
 | |
| Date:		Mar 2022
 | |
| Contact:	SeongJae 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:	SeongJae 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:	SeongJae 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:	SeongJae 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/qt_exceeds
 | |
| Date:		Mar 2022
 | |
| Contact:	SeongJae Park <sj@kernel.org>
 | |
| Description:	Reading this file returns the number of the exceed events of
 | |
| 		the scheme's quotas.
 |