diff --git a/include/linux/damon.h b/include/linux/damon.h index 450a70936ebb3a98c70c40f9331fa721be609e2b..875efe8f13775db4de8cf556c7836f247cdd49c6 100644 --- a/include/linux/damon.h +++ b/include/linux/damon.h @@ -17,8 +17,10 @@ #define DAMON_MIN_REGION PAGE_SIZE DECLARE_STATIC_KEY_FALSE(numa_stat_enabled_key); +#ifdef CONFIG_DAMON_DBGFS extern struct damon_ctx **dbgfs_ctxs; extern int dbgfs_nr_ctxs; +#endif /** * struct damon_addr_range - Represents an address region of [@start, @end). @@ -369,11 +371,13 @@ void damon_va_cleanup(struct damon_ctx *ctx); int damon_va_apply_scheme(struct damon_ctx *context, struct damon_target *t, struct damon_region *r, struct damos *scheme); void damon_va_set_primitives(struct damon_ctx *ctx); +#endif /* CONFIG_DAMON_VADDR */ + +#if defined(CONFIG_DAMON_DBGFS) && defined(CONFIG_DAMON_VADDR) void damon_numa_fault(int page_nid, int node_id, struct vm_fault *vmf); #else static inline void damon_numa_fault(int page_nid, int node_id, struct vm_fault *vmf) { } - -#endif /* CONFIG_DAMON_VADDR */ +#endif #ifdef CONFIG_DAMON_PADDR diff --git a/mm/damon/core.c b/mm/damon/core.c index 0617cdaa89aa5a1a1e235f166c797c177acad852..87eabb0598988f61987bbe5dddbad73e916b24fd 100644 --- a/mm/damon/core.c +++ b/mm/damon/core.c @@ -27,6 +27,8 @@ static DEFINE_MUTEX(damon_lock); static int nr_running_ctxs; +DEFINE_STATIC_KEY_FALSE(numa_stat_enabled_key); + /* * Construct a damon_region struct * @@ -871,6 +873,7 @@ static int kdamond_fn(void *data) return 0; } +#if defined(CONFIG_DAMON_DBGFS) && defined(CONFIG_DAMON_VADDR) static struct damon_target *get_damon_target(struct task_struct *task) { int i; @@ -937,5 +940,6 @@ void damon_numa_fault(int page_nid, int node_id, struct vm_fault *vmf) } } } +#endif #include "core-test.h" diff --git a/mm/damon/dbgfs.c b/mm/damon/dbgfs.c index ecf4a62d554b984170ff2010473807960e137631..78895a17404549507de5922fcb73f1370ff18009 100644 --- a/mm/damon/dbgfs.c +++ b/mm/damon/dbgfs.c @@ -609,8 +609,6 @@ static ssize_t dbgfs_kdamond_pid_read(struct file *file, return len; } -DEFINE_STATIC_KEY_FALSE(numa_stat_enabled_key); - static ssize_t dbgfs_numa_stat_read(struct file *file, char __user *buf, size_t count, loff_t *ppos) {