Commit 5257f36e authored by SeongJae Park's avatar SeongJae Park Committed by Linus Torvalds

mm/damon/core: add number of each enum type values

This commit declares the number of legal values for each DAMON enum types
to make traversals of such DAMON enum types easy and safe.

Link: https://lkml.kernel.org/r/20220228081314.5770-3-sj@kernel.orgSigned-off-by: default avatarSeongJae Park <sj@kernel.org>
Cc: David Rientjes <rientjes@google.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Jonathan Corbet <corbet@lwn.net>
Cc: Shuah Khan <skhan@linuxfoundation.org>
Cc: Xin Hao <xhao@linux.alibaba.com>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent 8b9b0d33
...@@ -87,6 +87,7 @@ struct damon_target { ...@@ -87,6 +87,7 @@ struct damon_target {
* @DAMOS_HUGEPAGE: Call ``madvise()`` for the region with MADV_HUGEPAGE. * @DAMOS_HUGEPAGE: Call ``madvise()`` for the region with MADV_HUGEPAGE.
* @DAMOS_NOHUGEPAGE: Call ``madvise()`` for the region with MADV_NOHUGEPAGE. * @DAMOS_NOHUGEPAGE: Call ``madvise()`` for the region with MADV_NOHUGEPAGE.
* @DAMOS_STAT: Do nothing but count the stat. * @DAMOS_STAT: Do nothing but count the stat.
* @NR_DAMOS_ACTIONS: Total number of DAMOS actions
*/ */
enum damos_action { enum damos_action {
DAMOS_WILLNEED, DAMOS_WILLNEED,
...@@ -95,6 +96,7 @@ enum damos_action { ...@@ -95,6 +96,7 @@ enum damos_action {
DAMOS_HUGEPAGE, DAMOS_HUGEPAGE,
DAMOS_NOHUGEPAGE, DAMOS_NOHUGEPAGE,
DAMOS_STAT, /* Do nothing but only record the stat */ DAMOS_STAT, /* Do nothing but only record the stat */
NR_DAMOS_ACTIONS,
}; };
/** /**
...@@ -157,10 +159,12 @@ struct damos_quota { ...@@ -157,10 +159,12 @@ struct damos_quota {
* *
* @DAMOS_WMARK_NONE: Ignore the watermarks of the given scheme. * @DAMOS_WMARK_NONE: Ignore the watermarks of the given scheme.
* @DAMOS_WMARK_FREE_MEM_RATE: Free memory rate of the system in [0,1000]. * @DAMOS_WMARK_FREE_MEM_RATE: Free memory rate of the system in [0,1000].
* @NR_DAMOS_WMARK_METRICS: Total number of DAMOS watermark metrics
*/ */
enum damos_wmark_metric { enum damos_wmark_metric {
DAMOS_WMARK_NONE, DAMOS_WMARK_NONE,
DAMOS_WMARK_FREE_MEM_RATE, DAMOS_WMARK_FREE_MEM_RATE,
NR_DAMOS_WMARK_METRICS,
}; };
/** /**
......
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