[RFC 0/2] Damos filter cleanup code and implement workingset

From: Huan Yang
Date: Tue Sep 19 2023 - 05:53:49 EST


Now damos support filter contains two type.
The first is scheme filter which will invoke each scheme apply,
second is scheme action filter, which will filter out unwanted action.

But this implement is scattered in different implementations and hard
to reuse or extend.

This patchset clean up those filter code, move into filter.c and add header
to expose filter func.(patch 2) And add a new filter "workingset" to
protect workingset page.

Do we need this and cleanup it?

Huan Yang (2):
mm/damos/filter: Add workingset page filter
mm/damos/filter: Damos filter cleanup

include/linux/damon.h | 62 +-----------------
mm/damon/Makefile | 2 +-
mm/damon/core-test.h | 7 ++
mm/damon/core.c | 93 ++++-----------------------
mm/damon/filter.c | 135 +++++++++++++++++++++++++++++++++++++++
mm/damon/filter.h | 119 ++++++++++++++++++++++++++++++++++
mm/damon/paddr.c | 29 +++------
mm/damon/reclaim.c | 48 +++++++++++---
mm/damon/sysfs-schemes.c | 1 +
9 files changed, 325 insertions(+), 171 deletions(-)
create mode 100644 mm/damon/filter.c
create mode 100644 mm/damon/filter.h

--
2.34.1