mm/damon: add sysfs dirs for managing DAMOS filters based on handling layers
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest8 patches 2 repliesIn review
Patches in v1 No applies recorded yet
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 0/8] mm/damon: add sysfs dirs for managing DAMOS filters based on handling layers
DAMOS filters are categorized into two groups based on their handling layers, namely core and operations layers. The categorization affects when each filter is evaluated. Core layer handled filters are evaluated first. The order meant nothing before, but introduction of allow filters changed that.
DAMOS sysfs interface provides single directory for filters, namely 'filters'. Users can install any filters in any order there. DAMON will internally categorize those into core and operations layer handled ones, and apply the evaluation order rule. The ordering rule is clearly documented. But the interface could still confuse users since it is allowed to install filters on the directory in mixed ways.
Add two sysfs directories for managing filters by handling layer, namely 'core_filters' and 'ops_filters' for filters that handled by core and operations layer, respectively. Those are avoided to be used for installing filters that not handled by the assumed layer.
For backward compatibility, keep 'filters' directory with its curernt behavior. Filters installed in the directory will be added to DAMON after those of 'core_filters' and 'ops_filters' directories, with the automatic categorizations. Also recommend users to use the new directories, and noticee 'filters' directory could be deprecated in future.
Note that new directories provide all features that were provided with 'filters', but just in a more clear way. Deprecating 'filters' is not expected to make an irreversal breakge.
Also note that this patch series depend on filters default behavior change patch series[1].
[1] https://lore.kernel.org/[email protected]
SeongJae Park (8):
mm/damon/sysfs-schemes: let damon_sysfs_scheme_set_filters() be used
for different named directories
mm/damon/sysfs-schemes: implement core_filters and ops_filters
directories
mm/damon/sysfs-schemes: commit filters in {core,ops}_filters
directories
mm/damon/core: expose damos_filter_for_ops() to DAMON kernel API
callers
mm/damon/sysfs-schemes: set filters handling layer of directories mm/damon/sysfs-schemes: return error for wrong filter type on given
directory
Docs/ABI/damon: document {core,ops}_filters directories Docs/admin-guide/mm/damon/usage: update for {core,ops}_filters
directories
.../ABI/testing/sysfs-kernel-mm-damon | 16 +++ Documentation/admin-guide/mm/damon/usage.rst | 31 +++-- include/linux/damon.h | 1 + mm/damon/core.c | 9 +- mm/damon/sysfs-schemes.c | 119 ++++++++++++++++-- 5 files changed, 153 insertions(+), 23 deletions(-)
base-commit: c6ff92c642d665270c718aece87bc33d264d2c00
Signature · 1 line
2.39.5