Commit 96a7cb23 authored by SeongJae Park's avatar SeongJae Park Committed by Andrew Morton

Docs/mm/damon/design: update for address range filters

Update DAMON design document's DAMOS filters section for address range
DAMOS filters.  Because address range filters are handled by the core
layer and it makes difference in schemes tried regions and schemes
statistics, clearly describe it.

Link: https://lkml.kernel.org/r/20230802214312.110532-6-sj@kernel.orgSigned-off-by: default avatarSeongJae Park <sj@kernel.org>
Cc: Brendan Higgins <brendanhiggins@google.com>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Shuah Khan <shuah@kernel.org>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
parent 4c45c20d
...@@ -380,12 +380,21 @@ number of filters for each scheme. Each filter specifies the type of target ...@@ -380,12 +380,21 @@ 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 memory, and whether it should exclude the memory of the type (filter-out), or
all except the memory of the type (filter-in). all except the memory of the type (filter-in).
As of this writing, anonymous page type and memory cgroup type are supported by Currently, anonymous page, memory cgroup, and address range type filters are
the feature. Some filter target types can require additional arguments. For supported by the feature. Some filter target types can require additional
example, the memory cgroup filter type asks users to specify the file path of arguments. For example, the memory cgroup filter type asks users to specify
the memory cgroup for the filter. Hence, users can apply specific schemes to the file path of the memory cgroup for the filter, while the address range type
only anonymous pages, non-anonymous pages, pages of specific cgroups, all pages asks the start and end addresses of the range. Hence, users can apply specific
excluding those of specific cgroups, and any combination of those. schemes to only anonymous pages, non-anonymous pages, pages of specific
cgroups, all pages excluding those of specific cgroups, pages in specific
address range, and any combination of those.
To handle filters efficiently, the address range type filter is handled by the
core layer, while others are handled by operations set. If a memory region is
filtered by the 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.
Application Programming Interface Application Programming Interface
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment