linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: SeongJae Park <sj@kernel.org>
To: SeongJae Park <sj@kernel.org>
Cc: gutierrez.asier@huawei-partners.com, artem.kuzin@huawei.com,
	stepanov.anatoly@huawei.com, wangkefeng.wang@huawei.com,
	yanquanmin1@huawei.com, zuoze1@huawei.com, damon@lists.linux.dev,
	akpm@linux-foundation.org, linux-mm@kvack.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH v1] mm/damon: remove unused code
Date: Thu, 12 Feb 2026 08:51:37 -0800	[thread overview]
Message-ID: <20260212165138.60213-1-sj@kernel.org> (raw)
In-Reply-To: <20260212154157.75372-1-sj@kernel.org>

On Thu, 12 Feb 2026 07:41:56 -0800 SeongJae Park <sj@kernel.org> wrote:

> On Thu, 12 Feb 2026 09:43:26 +0000 <gutierrez.asier@huawei-partners.com> wrote:
> 
> > From: Asier Gutierrez <gutierrez.asier@huawei-partners.com>
> > 
> > damon_target is not used by get_scheme_score operations, nor with
> > virtual neither with physical addresses.
> 
> Good finding, thank you for this patch, Asier!
> 
> The subject seems bit ambiguous, though.  What about "remove unused target
> param of get_scheme_score()" ?
> 
> > 
> > Signed-off-by: Asier Gutierrez <gutierrez.asier@huawei-partners.com>
> 
> Other than the subject,
> 
> Reviewed-by: SeongJae Park <sj@kernel.org>
> 
> Also, DAMON patches are recommended to use mm-new as thier baseline [1] unless
> there are other reasons to not to do so.  But I found 'git am' of this patch on
> the mm-new fails.  It works on the master of mm.git, which is a commit of
> Linus' tree, though.  So, maybe this patch is not using mm-new as the baseline?
> Please consider using mm-new as the baseline next time, or specify why you use
> choose different tree as the baseline.
> 
> Assuming you are ok to the subject change (let me know if you are not), I'm
> attaching a new version of this patch that has changed the subject with my
> suggestion, and manually resolved the conflicts on mm-new, for Andrew's
> convenience.  I also applied that to my tree (damon/next), and I will repost it
> if Andrew miss this (as we are in the middle of merge window, maintainers could
> miss many things).
> 
> [1] https://origin.kernel.org/doc/html/latest/mm/damon/maintainer-profile.html#scm-trees
> 
> 
> Thanks,
> SJ
> 
> [...]
> ======= >8 =======
> From e09d66bb116604c9dc5b22540641e991d977ea6b Mon Sep 17 00:00:00 2001
> From: Asier Gutierrez <gutierrez.asier@huawei-partners.com>
> Date: Thu, 12 Feb 2026 09:43:26 +0000
> Subject: [PATCH] mm/damon/: remove unused target param of get_scheme_score()
> 
> damon_target is not used by get_scheme_score operations, nor with
> virtual neither with physical addresses.
> 
> Signed-off-by: Asier Gutierrez <gutierrez.asier@huawei-partners.com>
> 
> Link: https://patch.msgid.link/20260212094326.906497-1-gutierrez.asier@huawei-partners.com

Oops, I attached an old version of the modified patch that not adjusted this
tags area.  Andrew, if you pick this up, could you please add below together:

Reviewed-by: SeongJae Park <sj@kernel.org>


Thanks,
SJ

> Signed-off-by: SeongJae Park <sj@kernel.org>
> ---
>  include/linux/damon.h |  3 +--
>  mm/damon/core.c       | 10 +++++-----
>  mm/damon/paddr.c      |  3 +--
>  mm/damon/vaddr.c      |  3 +--
>  4 files changed, 8 insertions(+), 11 deletions(-)
> 
> diff --git a/include/linux/damon.h b/include/linux/damon.h
> index a4fea23da8576..9a88cf8d152d8 100644
> --- a/include/linux/damon.h
> +++ b/include/linux/damon.h
> @@ -647,8 +647,7 @@ struct damon_operations {
>  	void (*prepare_access_checks)(struct damon_ctx *context);
>  	unsigned int (*check_accesses)(struct damon_ctx *context);
>  	int (*get_scheme_score)(struct damon_ctx *context,
> -			struct damon_target *t, struct damon_region *r,
> -			struct damos *scheme);
> +			struct damon_region *r, struct damos *scheme);
>  	unsigned long (*apply_scheme)(struct damon_ctx *context,
>  			struct damon_target *t, struct damon_region *r,
>  			struct damos *scheme, unsigned long *sz_filter_passed);
> diff --git a/mm/damon/core.c b/mm/damon/core.c
> index 5e2724a4f285e..925908415a041 100644
> --- a/mm/damon/core.c
> +++ b/mm/damon/core.c
> @@ -1679,15 +1679,15 @@ static bool __damos_valid_target(struct damon_region *r, struct damos *s)
>  		r->age <= s->pattern.max_age_region;
>  }
>  
> -static bool damos_valid_target(struct damon_ctx *c, struct damon_target *t,
> -		struct damon_region *r, struct damos *s)
> +static bool damos_valid_target(struct damon_ctx *c, struct damon_region *r,
> +		struct damos *s)
>  {
>  	bool ret = __damos_valid_target(r, s);
>  
>  	if (!ret || !s->quota.esz || !c->ops.get_scheme_score)
>  		return ret;
>  
> -	return c->ops.get_scheme_score(c, t, r, s) >= s->quota.min_score;
> +	return c->ops.get_scheme_score(c, r, s) >= s->quota.min_score;
>  }
>  
>  /*
> @@ -2011,7 +2011,7 @@ static void damon_do_apply_schemes(struct damon_ctx *c,
>  				s->max_nr_snapshots <= s->stat.nr_snapshots)
>  			continue;
>  
> -		if (damos_valid_target(c, t, r, s))
> +		if (damos_valid_target(c, r, s))
>  			damos_apply_scheme(c, t, r, s);
>  
>  		if (damon_is_last_region(r, t))
> @@ -2309,7 +2309,7 @@ static void damos_adjust_quota(struct damon_ctx *c, struct damos *s)
>  		damon_for_each_region(r, t) {
>  			if (!__damos_valid_target(r, s))
>  				continue;
> -			score = c->ops.get_scheme_score(c, t, r, s);
> +			score = c->ops.get_scheme_score(c, r, s);
>  			c->regions_score_histogram[score] +=
>  				damon_sz_region(r);
>  			if (score > max_score)
> diff --git a/mm/damon/paddr.c b/mm/damon/paddr.c
> index 9bfe488268407..5cdcc5037cbc1 100644
> --- a/mm/damon/paddr.c
> +++ b/mm/damon/paddr.c
> @@ -343,8 +343,7 @@ static unsigned long damon_pa_apply_scheme(struct damon_ctx *ctx,
>  }
>  
>  static int damon_pa_scheme_score(struct damon_ctx *context,
> -		struct damon_target *t, struct damon_region *r,
> -		struct damos *scheme)
> +		struct damon_region *r, struct damos *scheme)
>  {
>  	switch (scheme->action) {
>  	case DAMOS_PAGEOUT:
> diff --git a/mm/damon/vaddr.c b/mm/damon/vaddr.c
> index 83ab3d8c37920..4e3430d4191d1 100644
> --- a/mm/damon/vaddr.c
> +++ b/mm/damon/vaddr.c
> @@ -986,8 +986,7 @@ static unsigned long damon_va_apply_scheme(struct damon_ctx *ctx,
>  }
>  
>  static int damon_va_scheme_score(struct damon_ctx *context,
> -		struct damon_target *t, struct damon_region *r,
> -		struct damos *scheme)
> +		struct damon_region *r, struct damos *scheme)
>  {
>  
>  	switch (scheme->action) {
> -- 
> 2.47.3

Sent using hkml (https://github.com/sjp38/hackermail)


  reply	other threads:[~2026-02-12 16:51 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-02-12  9:43 gutierrez.asier
2026-02-12 15:41 ` SeongJae Park
2026-02-12 16:51   ` SeongJae Park [this message]
2026-02-13  9:22   ` Gutierrez Asier

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260212165138.60213-1-sj@kernel.org \
    --to=sj@kernel.org \
    --cc=akpm@linux-foundation.org \
    --cc=artem.kuzin@huawei.com \
    --cc=damon@lists.linux.dev \
    --cc=gutierrez.asier@huawei-partners.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=stepanov.anatoly@huawei.com \
    --cc=wangkefeng.wang@huawei.com \
    --cc=yanquanmin1@huawei.com \
    --cc=zuoze1@huawei.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox