Message ID | 20220225130712.12682-14-sj@kernel.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Introduce DAMON sysfs interface | expand |
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@kernel.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@kernel.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. thanks, greg k-h
On Fri, 25 Feb 2022 14:18:59 +0100 Greg KH <gregkh@linuxfoundation.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@kernel.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@kernel.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! Thanks, SJ > > thanks, > > greg k-h
Hello Gregg, On Fri, 25 Feb 2022 13:23:00 +0000 SeongJae Park <sj@kernel.org> wrote: > On Fri, 25 Feb 2022 14:18:59 +0100 Greg KH <gregkh@linuxfoundation.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@kernel.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@kernel.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@kernel.org> +Description: Interface for Data Access MONitoring (DAMON). + See Documentation/admin-guide/mm/damon/index.rst for details. + +What: /sys/kernel/mm/damon/admin/ +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Interface for privileged users of DAMON. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/nr_kdamonds +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Writing a number to this file creates the number of kdamond + directories under the kdamonds/ directory. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/state +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the current state of the kdamond. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/pid +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the pid of the kdamond. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/nr_contexts +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Writing a number to this file creates the number of DAMON + context directories under the contexts/ directory. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/operations +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the monitoring operations set to + use for the context. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/sample_us +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the sampling interval for the + context in micro-seconds. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/aggr_us +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the aggregation interval for the + context in micro-seconds. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/update_us +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the update interval for the + context in micro-seconds. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/min + +WDate: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the minimum number of monitoring + regions for the context. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/max +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the maximum number of monitoring + regions for the context. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/nr_targets +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Writing a number to this file creates the number of monitoring + target directories under the targets/ directory. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/pid_target +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the pid of the target process if + the context is for virtual address spaces monitoring. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/nr_regions +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Writing a number to this file creates the number of monitoring + region directories under the regions/ directory. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/start +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the start address of the + monitoring region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/end +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the end address of the monitoring + region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/nr_schemes +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Writing a number to this file creates the number of DAMON-based + operation scheme directories under the schemes/ directory. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/action +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the action of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/min +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the mimimum size of the scheme's + target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/max +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the maximum size of the scheme's + target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/min +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the mimimum 'nr_accesses' of the + scheme's target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/max +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the maximum 'nr_accesses' of the + scheme's target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/min +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the mimimum 'age' of the scheme's + target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/max +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the mimimum 'age' of the scheme's + target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/ms +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the time quota of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/bytes +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the size quota of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/reset_interval_ms +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the quota charge reset interval. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/sz_permil +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the under-quota regions + prioritization weight for 'nr_accesses'. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/nr_accesses_permil +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the under-quota regions + prioritization weight for 'nr_accesses'. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/age_permil +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the under-quota regions + prioritization weight for 'age'. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/metric +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the metric of the watermarks for + the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/interval_us +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the metric check interval of the + watermarks for the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/high +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the high watermark of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/mid +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the mid watermark of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/low +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the low watermark of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_tried +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the number of regions that the action of the + scheme has tried. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_tried +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the total size of regions that the action of + the scheme has tried. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_applied +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the number of regions that the action of the + scheme has successfully applied. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_applied +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the total size of regions that the action of + the scheme has successfully applied. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/qt_exceeds +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the number of the exceed events of the + scheme's quota. + See Documentation/admin-guide/mm/damon/usage.rst for details. Thanks, SJ > > > Thanks, > SJ > > > > > thanks, > > > > greg k-h
On Fri, 25 Feb 2022 14:10:07 +0000 SeongJae Park <sj@kernel.org> wrote: > Hello Gregg, > > > On Fri, 25 Feb 2022 13:23:00 +0000 SeongJae Park <sj@kernel.org> wrote: > > > On Fri, 25 Feb 2022 14:18:59 +0100 Greg KH <gregkh@linuxfoundation.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@kernel.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@kernel.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@kernel.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@kernel.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@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: Feb 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: Feb 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 '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@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: Feb 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>/operations +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.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@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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Reading this file returns the number of the exceed events of + the scheme's quotas.
On Fri, Feb 25, 2022 at 02:15:40PM +0000, SeongJae Park wrote: > On Fri, 25 Feb 2022 14:10:07 +0000 SeongJae Park <sj@kernel.org> wrote: > > > Hello Gregg, > > > > > > On Fri, 25 Feb 2022 13:23:00 +0000 SeongJae Park <sj@kernel.org> wrote: > > > > > On Fri, 25 Feb 2022 14:18:59 +0100 Greg KH <gregkh@linuxfoundation.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@kernel.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@kernel.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@kernel.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@kernel.org> > +Description: Interface for Data Access MONitoring (DAMON). Contains files > + for controlling DAMON. For this entry, point people at your larger documentation. > + > +What: /sys/kernel/mm/damon/admin/ > +Date: Feb 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: Feb 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: Feb 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 '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@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: Feb 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>/operations > +Date: Feb 2022 > +Contact: SeongJae Park <sj@kernel.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@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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 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: Feb 2022 > +Contact: SeongJae Park <sj@kernel.org> > +Description: Reading this file returns the number of the exceed events of > + the scheme's quotas. > Yes, this looks much better, thanks. But you might want to change the month as I doubt this will be merged in the next few days :) thanks, greg k-h
Hi Gregg, On Fri, 25 Feb 2022 15:58:49 +0100 Greg KH <gregkh@linuxfoundation.org> wrote: > On Fri, Feb 25, 2022 at 02:15:40PM +0000, SeongJae Park wrote: > > On Fri, 25 Feb 2022 14:10:07 +0000 SeongJae Park <sj@kernel.org> wrote: > > > > > Hello Gregg, > > > > > > > > > On Fri, 25 Feb 2022 13:23:00 +0000 SeongJae Park <sj@kernel.org> wrote: > > > > > > > On Fri, 25 Feb 2022 14:18:59 +0100 Greg KH <gregkh@linuxfoundation.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@kernel.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@kernel.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@kernel.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@kernel.org> > > +Description: Interface for Data Access MONitoring (DAMON). Contains files > > + for controlling DAMON. > > For this entry, point people at your larger documentation. Good suggestion, I will. > [...] > > Yes, this looks much better, thanks. But you might want to change the > month as I doubt this will be merged in the next few days :) Thank you for the quick and nice comment :) Thanks, SJ > > thanks, > > greg k-h > >
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@kernel.org> +Description: Interface for Data Access MONitoring (DAMON). + See Documentation/admin-guide/mm/damon/index.rst for details. + +What: /sys/kernel/mm/damon/admin/ +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Interface for privileged users of DAMON. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/nr_kdamonds +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Writing a number to this file creates the number of kdamond + directories under the kdamonds/ directory. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/state +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the current state of the kdamond. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/pid +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the pid of the kdamond. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/nr_contexts +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Writing a number to this file creates the number of DAMON + context directories under the contexts/ directory. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/operations +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the monitoring operations set to + use for the context. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/sample_us +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the sampling interval for the + context in micro-seconds. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/aggr_us +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the aggregation interval for the + context in micro-seconds. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/intervals/update_us +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the update interval for the + context in micro-seconds. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/min + +WDate: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the minimum number of monitoring + regions for the context. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/monitoring_attrs/nr_regions/max +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the maximum number of monitoring + regions for the context. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/nr_targets +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Writing a number to this file creates the number of monitoring + target directories under the targets/ directory. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/pid_target +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the pid of the target process if + the context is for virtual address spaces monitoring. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/nr_regions +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Writing a number to this file creates the number of monitoring + region directories under the regions/ directory. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/start +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the start address of the + monitoring region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/targets/<T>/regions/<R>/end +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the end address of the monitoring + region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/nr_schemes +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: Writing a number to this file creates the number of DAMON-based + operation scheme directories under the schemes/ directory. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/action +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the action of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/min +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the mimimum size of the scheme's + target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/sz/max +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the maximum size of the scheme's + target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/min +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the mimimum 'nr_accesses' of the + scheme's target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/nr_accesses/max +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the maximum 'nr_accesses' of the + scheme's target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/min +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the mimimum 'age' of the scheme's + target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/access_pattern/age/max +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the mimimum 'age' of the scheme's + target region. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/ms +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the time quota of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/bytes +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the size quota of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/reset_interval_ms +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the quota charge reset interval. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/sz_permil +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the under-quota regions + prioritization weight for 'nr_accesses'. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/nr_accesses_permil +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the under-quota regions + prioritization weight for 'nr_accesses'. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/quotas/weights/age_permil +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the under-quota regions + prioritization weight for 'age'. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/metric +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the metric of the watermarks for + the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/interval_us +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the metric check interval of the + watermarks for the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/high +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the high watermark of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/mid +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the mid watermark of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/watermarks/low +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for setting and getting the low watermark of the scheme. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_tried +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the number of regions that the action of the + scheme has tried. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_tried +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the total size of regions that the action of + the scheme has tried. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/nr_applied +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the number of regions that the action of the + scheme has successfully applied. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/sz_applied +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the total size of regions that the action of + the scheme has successfully applied. + See Documentation/admin-guide/mm/damon/usage.rst for details. + +What: /sys/kernel/mm/damon/admin/kdamonds/<K>/contexts/<C>/schemes/<S>/stats/qt_exceeds +Date: Feb 2022 +Contact: SeongJae Park <sj@kernel.org> +Description: File for getting the number of the exceed events of the + scheme's quota. + See Documentation/admin-guide/mm/damon/usage.rst for details. diff --git a/MAINTAINERS b/MAINTAINERS index 0153a614bab0..f45c6d381e22 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -5416,6 +5416,7 @@ DATA ACCESS MONITOR M: SeongJae Park <sj@kernel.org> L: linux-mm@kvack.org S: Maintained +F: Documentation/ABI/testing/sysfs-kernel-mm-damon F: Documentation/admin-guide/mm/damon/ F: Documentation/vm/damon/ F: include/linux/damon.h
This commit adds DAMON sysfs interface ABI document under Documentation/ABI/testing. Signed-off-by: SeongJae Park <sj@kernel.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