The patch titled Subject: mm/damon: move damon_rand() definition into damon.h has been added to the -mm tree. Its filename is mm-damon-move-damon_rand-definition-into-damonh.patch This patch should soon appear at https://ozlabs.org/~akpm/mmots/broken-out/mm-damon-move-damon_rand-definition-into-damonh.patch and later at https://ozlabs.org/~akpm/mmotm/broken-out/mm-damon-move-damon_rand-definition-into-damonh.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Xin Hao <xhao@xxxxxxxxxxxxxxxxx> Subject: mm/damon: move damon_rand() definition into damon.h damon_rand() is called in three files:damon/core.c, damon/ paddr.c, damon/vaddr.c, i think there is no need to redefine this twice, So move it to damon.h will be a good choice. Link: https://lkml.kernel.org/r/20211202075859.51341-1-xhao@xxxxxxxxxxxxxxxxx Signed-off-by: Xin Hao <xhao@xxxxxxxxxxxxxxxxx> Reviewed-by: SeongJae Park <sj@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/linux/damon.h | 4 ++++ mm/damon/core.c | 4 ---- mm/damon/prmtv-common.h | 4 ---- 3 files changed, 4 insertions(+), 8 deletions(-) --- a/include/linux/damon.h~mm-damon-move-damon_rand-definition-into-damonh +++ a/include/linux/damon.h @@ -11,12 +11,16 @@ #include <linux/mutex.h> #include <linux/time64.h> #include <linux/types.h> +#include <linux/random.h> /* Minimal region size. Every damon_region is aligned by this. */ #define DAMON_MIN_REGION PAGE_SIZE /* Max priority score for DAMON-based operation schemes */ #define DAMOS_MAX_SCORE (99) +/* Get a random number in [l, r) */ +#define damon_rand(l, r) (l + prandom_u32_max(r - l)) + /** * struct damon_addr_range - Represents an address region of [@start, @end). * @start: Start address of the region (inclusive). --- a/mm/damon/core.c~mm-damon-move-damon_rand-definition-into-damonh +++ a/mm/damon/core.c @@ -11,7 +11,6 @@ #include <linux/delay.h> #include <linux/kthread.h> #include <linux/mm.h> -#include <linux/random.h> #include <linux/slab.h> #include <linux/string.h> @@ -23,9 +22,6 @@ #define DAMON_MIN_REGION 1 #endif -/* Get a random number in [l, r) */ -#define damon_rand(l, r) (l + prandom_u32_max(r - l)) - static DEFINE_MUTEX(damon_lock); static int nr_running_ctxs; --- a/mm/damon/prmtv-common.h~mm-damon-move-damon_rand-definition-into-damonh +++ a/mm/damon/prmtv-common.h @@ -6,10 +6,6 @@ */ #include <linux/damon.h> -#include <linux/random.h> - -/* Get a random number in [l, r) */ -#define damon_rand(l, r) (l + prandom_u32_max(r - l)) struct page *damon_get_page(unsigned long pfn); _ Patches currently in -mm which might be from xhao@xxxxxxxxxxxxxxxxx are mm-damon-unified-access_check-function-naming-rules.patch mm-damon-add-age-of-region-tracepoint-support.patch mm-damon-core-using-function-abs-instead-of-diff_of.patch mm-damon-remove-some-no-need-func-definitions-in-damonh-file.patch mm-damon-schemes-add-the-validity-judgment-of-thresholds.patch mm-damon-move-damon_rand-definition-into-damonh.patch