summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mm/damon/sysfs-schemes.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/mm/damon/sysfs-schemes.c b/mm/damon/sysfs-schemes.c
index 4d9147d2a269..3de4d804e049 100644
--- a/mm/damon/sysfs-schemes.c
+++ b/mm/damon/sysfs-schemes.c
@@ -589,7 +589,10 @@ damos_sysfs_filter_type_names[] = {
.type = DAMOS_FILTER_TYPE_TARGET,
.name = "target",
},
-
+ {
+ .type = DAMOS_FILTER_TYPE_PROBE_HITS_WSUM,
+ .name = "probe_hits_wsum",
+ },
};
static ssize_t type_show(struct kobject *kobj,
@@ -2844,6 +2847,13 @@ static int damon_sysfs_add_scheme_filters(struct damos *scheme,
}
filter->sz_range.min = sysfs_filter->range_min;
filter->sz_range.max = sysfs_filter->range_max;
+ } else if (filter->type == DAMOS_FILTER_TYPE_PROBE_HITS_WSUM) {
+ filter->range_min = sysfs_filter->range_min;
+ filter->range_max = sysfs_filter->range_max;
+ if (filter->range_min > filter->range_max) {
+ damos_destroy_filter(filter);
+ return -EINVAL;
+ }
}
damos_add_filter(scheme, filter);