diff mbox series

[3/8] mm/damon/sysfs-schemes: commit filters in {core,ops}_filters directories

Message ID 20250220194646.37726-4-sj@kernel.org (mailing list archive)
State New
Headers show
Series mm/damon: add sysfs dirs for managing DAMOS filters based on handling layers | expand

Commit Message

SeongJae Park Feb. 20, 2025, 7:46 p.m. UTC
Connect user inputs to files under core_filters and ops_filters with
DAMON, so that the files can really function.  Becasuse
{core,ops}_filters are easier to be managed in terms of expecting
filters evaluation order, add filters in {core,ops}_filters before
'filters' directory.

Signed-off-by: SeongJae Park <sj@kernel.org>
---
 mm/damon/sysfs-schemes.c | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)
diff mbox series

Patch

diff --git a/mm/damon/sysfs-schemes.c b/mm/damon/sysfs-schemes.c
index 61ff800ce78d..e85feb329bd6 100644
--- a/mm/damon/sysfs-schemes.c
+++ b/mm/damon/sysfs-schemes.c
@@ -2143,8 +2143,6 @@  static struct damos *damon_sysfs_mk_scheme(
 	struct damon_sysfs_quotas *sysfs_quotas = sysfs_scheme->quotas;
 	struct damon_sysfs_weights *sysfs_weights = sysfs_quotas->weights;
 	struct damon_sysfs_watermarks *sysfs_wmarks = sysfs_scheme->watermarks;
-	struct damon_sysfs_scheme_filters *sysfs_filters =
-		sysfs_scheme->filters;
 	struct damos *scheme;
 	int err;
 
@@ -2184,7 +2182,17 @@  static struct damos *damon_sysfs_mk_scheme(
 		return NULL;
 	}
 
-	err = damon_sysfs_add_scheme_filters(scheme, sysfs_filters);
+	err = damon_sysfs_add_scheme_filters(scheme, sysfs_scheme->core_filters);
+	if (err) {
+		damon_destroy_scheme(scheme);
+		return NULL;
+	}
+	err = damon_sysfs_add_scheme_filters(scheme, sysfs_scheme->ops_filters);
+	if (err) {
+		damon_destroy_scheme(scheme);
+		return NULL;
+	}
+	err = damon_sysfs_add_scheme_filters(scheme, sysfs_scheme->filters);
 	if (err) {
 		damon_destroy_scheme(scheme);
 		return NULL;