From: SeongJae Park <sj@kernel.org>
To: Andrew Morton <akpm@linux-foundation.org>
Cc: SeongJae Park <sj@kernel.org>, Jonathan Corbet <corbet@lwn.net>,
damon@lists.linux.dev, linux-mm@kvack.org,
linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH 08/10] Docs/mm/damon/design: use a list for supported filters
Date: Fri, 3 May 2024 11:03:16 -0700 [thread overview]
Message-ID: <20240503180318.72798-9-sj@kernel.org> (raw)
In-Reply-To: <20240503180318.72798-1-sj@kernel.org>
Filters section is listing currently supported filter types in a normal
paragraph. Since the number of types are higher than four, it is not
easy to read for only specific types. Use a list for easier finding of
specific types.
Signed-off-by: SeongJae Park <sj@kernel.org>
---
Documentation/mm/damon/design.rst | 46 +++++++++++++++++--------------
1 file changed, 26 insertions(+), 20 deletions(-)
diff --git a/Documentation/mm/damon/design.rst b/Documentation/mm/damon/design.rst
index f2baf617184d..1873755358af 100644
--- a/Documentation/mm/damon/design.rst
+++ b/Documentation/mm/damon/design.rst
@@ -461,26 +461,32 @@ number of filters for each scheme. Each filter specifies the type of target
memory, and whether it should exclude the memory of the type (filter-out), or
all except the memory of the type (filter-in).
-Currently, anonymous page, memory cgroup, young page, address range, and DAMON
-monitoring target type filters are supported by the feature. Some filter
-target types require additional arguments. The memory cgroup filter type asks
-users to specify the file path of the memory cgroup for the filter. The
-address range type asks the start and end addresses of the range. The DAMON
-monitoring target type asks the index of the target from the context's
-monitoring targets list. Hence, users can apply specific schemes to only
-anonymous pages, non-anonymous pages, pages of specific cgroups, all pages
-excluding those of specific cgroups, pages that not accessed after the last
-access check from the scheme, pages that accessed after the last access check
-from the scheme, pages in specific address range, pages in specific DAMON
-monitoring targets, and any combination of those.
-
-To handle filters efficiently, the address range and DAMON monitoring target
-type filters are handled by the core layer, while others are handled by
-operations set. If a memory region is filtered by a core layer-handled filter,
-it is not counted as the scheme has tried to the region. In contrast, if a
-memory regions is filtered by an operations set layer-handled filter, it is
-counted as the scheme has tried. The difference in accounting leads to changes
-in the statistics.
+For efficient handling of filters, some types of filters are handled by the
+core layer, while others are handled by operations set. In the latter case,
+hence, support of the filter types depends on the DAMON operations set. In
+case of the core layer-handled filters, the memory regions that excluded by the
+filter are not counted as the scheme has tried to the region. In contrast, if
+a memory regions is filtered by an operations set layer-handled filter, it is
+counted as the scheme has tried. This difference affects the statistics.
+
+Below types of filters are currently supported.
+
+- anonymous page
+ - Applied to pages that containing data that not stored in files.
+ - Handled by operations set layer. Supported by only ``paddr`` set.
+- memory cgroup
+ - Applied to pages that belonging to a given cgroup.
+ - Handled by operations set layer. Supported by only ``paddr`` set.
+- young page
+ - Applied to pages that are accessed after the last access check from the
+ scheme.
+ - Handled by operations set layer. Supported by only ``paddr`` set.
+- address range
+ - Applied to pages that belonging to a given address range.
+ - Handled by the core logic.
+- DAMON monitoring target
+ - Applied to pages that belonging to a given DAMON monitoring target.
+ - Handled by the core logic.
Application Programming Interface
--
2.39.2
next prev parent reply other threads:[~2024-05-03 18:03 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-03 18:03 [PATCH 00/10] mm/damon: misc fixes and improvements SeongJae Park
2024-05-03 18:03 ` [PATCH 01/10] mm/damon/core: initialize ->esz_bp from damos_quota_init_priv() SeongJae Park
2024-05-03 18:03 ` [PATCH 02/10] selftests/damon/_damon_sysfs: check errors from nr_schemes file reads SeongJae Park
2024-05-03 18:03 ` [PATCH 03/10] selftests/damon/_damon_sysfs: find sysfs mount point from /proc/mounts SeongJae Park
2024-05-03 18:03 ` [PATCH 04/10] selftests/damon/_damon_sysfs: use 'is' instead of '==' for 'None' SeongJae Park
2024-05-03 18:03 ` [PATCH 05/10] selftests/damon: classify tests for functionalities and regressions SeongJae Park
2024-05-03 18:03 ` [PATCH 06/10] Docs/admin-guide/mm/damon/usage: fix wrong example of DAMOS filter matching sysfs file SeongJae Park
2024-05-03 18:03 ` [PATCH 07/10] Docs/admin-guide/mm/damon/usage: fix wrong schemes effective quota update command SeongJae Park
2024-05-03 18:03 ` SeongJae Park [this message]
2024-05-03 18:03 ` [PATCH 09/10] Docs/mm/damon/maintainer-profile: change the maintainer's timezone from PST to PT SeongJae Park
2024-05-03 18:03 ` [PATCH 10/10] Docs/mm/damon/maintainer-profile: allow posting patches based on damon/next tree SeongJae Park
2024-05-03 18:06 ` [PATCH 00/10] mm/damon: misc fixes and improvements SeongJae Park
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240503180318.72798-9-sj@kernel.org \
--to=sj@kernel.org \
--cc=akpm@linux-foundation.org \
--cc=corbet@lwn.net \
--cc=damon@lists.linux.dev \
--cc=linux-doc@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.