[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20220225141540.13082-1-sj@kernel.org>
Date: Fri, 25 Feb 2022 14:15:40 +0000
From: SeongJae Park <sj@...nel.org>
To: SeongJae Park <sj@...nel.org>
Cc: Greg KH <gregkh@...uxfoundation.org>, akpm@...ux-foundation.org,
corbet@....net, skhan@...uxfoundation.org, rientjes@...gle.com,
xhao@...ux.alibaba.com, linux-damon@...zon.com, linux-mm@...ck.org,
linux-doc@...r.kernel.org, linux-kselftest@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 13/13] Docs/ABI/testing: Add DAMON sysfs interface ABI document
On Fri, 25 Feb 2022 14:10:07 +0000 SeongJae Park <sj@...nel.org> wrote:
> Hello Gregg,
>
>
> On Fri, 25 Feb 2022 13:23:00 +0000 SeongJae Park <sj@...nel.org> wrote:
>
> > On Fri, 25 Feb 2022 14:18:59 +0100 Greg KH <gregkh@...uxfoundation.org> wrote:
> >
> > > On Fri, Feb 25, 2022 at 01:07:12PM +0000, SeongJae Park wrote:
> > > > This commit adds DAMON sysfs interface ABI document under
> > > > Documentation/ABI/testing.
> > > >
> > > > Signed-off-by: SeongJae Park <sj@...nel.org>
> > > > ---
> > > > .../ABI/testing/sysfs-kernel-mm-damon | 276 ++++++++++++++++++
> > > > MAINTAINERS | 1 +
> > > > 2 files changed, 277 insertions(+)
> > > > create mode 100644 Documentation/ABI/testing/sysfs-kernel-mm-damon
> > > >
> > > > diff --git a/Documentation/ABI/testing/sysfs-kernel-mm-damon b/Documentation/ABI/testing/sysfs-kernel-mm-damon
> > > > new file mode 100644
> > > > index 000000000000..11984c3a4b55
> > > > --- /dev/null
> > > > +++ b/Documentation/ABI/testing/sysfs-kernel-mm-damon
> > > > @@ -0,0 +1,276 @@
> > > > +what: /sys/kernel/mm/damon/
> > > > +Date: Feb 2022
> > > > +Contact: SeongJae Park <sj@...nel.org>
> > > > +Description: Interface for Data Access MONitoring (DAMON).
> > > > + See Documentation/admin-guide/mm/damon/index.rst for details.
> > >
> > > Ick, no. Put the real details in here please. That way it works with
> > > our tools.
> >
> > Ok, thanks for the quick comment!
>
> Before sending the full series again, I'd like to get your comment if you're
> ok. What do you think about below?
>
> diff --git a/Documentation/ABI/testing/sysfs-kernel-mm-damon b/Documentation/ABI/testing/sysfs-kernel-mm-damon
> new file mode 100644
> index 000000000000..11984c3a4b55
> --- /dev/null
> +++ b/Documentation/ABI/testing/sysfs-kernel-mm-damon
> @@ -0,0 +1,276 @@
> +what: /sys/kernel/mm/damon/
> +Date: Feb 2022
> +Contact: SeongJae Park <sj@...nel.org>
> +Description: Interface for Data Access MONitoring (DAMON).
> + See Documentation/admin-guide/mm/damon/index.rst for details.
Oops, I pasted wrong, sorry. Please read below:
diff --git a/Documentation/ABI/testing/sysfs-kernel-mm-damon b/Documentation/ABI/testing/sysfs-kernel-mm-damon
new file mode 100644
index 000000000000..e58d844b4f82
--- /dev/null
+++ b/Documentation/ABI/testing/sysfs-kernel-mm-damon
@@ -0,0 +1,273 @@
+what: /sys/kernel/mm/damon/
+Date: Feb 2022
+Contact: SeongJae Park <sj@...nel.org>
+Description: Interface for Data Access MONitoring (DAMON). Contains files
+ for controlling DAMON.
+
+What: /sys/kernel/mm/damon/admin/
+Date: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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 '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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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>/operations
+Date: Feb 2022
+Contact: SeongJae Park <sj@...nel.org>
+Description: Writing a keyword for a monitoring operations set ('vaddr' for
+ virtual address spaces 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.
+
+What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/sample_us
+Date: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.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: Feb 2022
+Contact: SeongJae Park <sj@...nel.org>
+Description: Reading this file returns the number of the exceed events of
+ the scheme's quotas.
Powered by blists - more mailing lists