stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3] damon/sysfs: Fix possible memleak on damon_sysfs_add_target.
@ 2022-09-25 23:43 Levi Yun
  2022-09-26 15:59 ` SeongJae Park
  0 siblings, 1 reply; 2+ messages in thread
From: Levi Yun @ 2022-09-25 23:43 UTC (permalink / raw)
  To: sj; +Cc: akpm, damon, linux-mm, Levi Yun, stable

When damon_sysfs_add_target couldn't find proper task,
New allocated damon_target structure isn't registered yet,
So, it's impossible to free new allocated one by
damon_sysfs_destroy_targets.

By calling daemon_add_target as soon as allocating new target, Fix this
possible memory leak.

Signed-off-by: Levi Yun <ppbuk5246@gmail.com>
Fixes:74bd8b7d2f8e7
Cc: <stable@vger.kernel.org>
---
 mm/damon/sysfs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/mm/damon/sysfs.c b/mm/damon/sysfs.c
index 7488e27c87c3..bdef9682d0a0 100644
--- a/mm/damon/sysfs.c
+++ b/mm/damon/sysfs.c
@@ -2182,12 +2182,12 @@ static int damon_sysfs_add_target(struct damon_sysfs_target *sys_target,
 
 	if (!t)
 		return -ENOMEM;
+	damon_add_target(ctx, t);
 	if (damon_target_has_pid(ctx)) {
 		t->pid = find_get_pid(sys_target->pid);
 		if (!t->pid)
 			goto destroy_targets_out;
 	}
-	damon_add_target(ctx, t);
 	err = damon_sysfs_set_regions(t, sys_target->regions);
 	if (err)
 		goto destroy_targets_out;
-- 
2.35.1


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH v3] damon/sysfs: Fix possible memleak on damon_sysfs_add_target.
  2022-09-25 23:43 [PATCH v3] damon/sysfs: Fix possible memleak on damon_sysfs_add_target Levi Yun
@ 2022-09-26 15:59 ` SeongJae Park
  0 siblings, 0 replies; 2+ messages in thread
From: SeongJae Park @ 2022-09-26 15:59 UTC (permalink / raw)
  To: Levi Yun; +Cc: sj, akpm, damon, linux-mm, stable

Hi Levi,

On Mon, 26 Sep 2022 08:43:27 +0900 Levi Yun <ppbuk5246@gmail.com> wrote:

> When damon_sysfs_add_target couldn't find proper task,
> New allocated damon_target structure isn't registered yet,
> So, it's impossible to free new allocated one by
> damon_sysfs_destroy_targets.
> 
> By calling daemon_add_target as soon as allocating new target, Fix this
> possible memory leak.
> 
> Signed-off-by: Levi Yun <ppbuk5246@gmail.com>
> Fixes:74bd8b7d2f8e7

The commit is indeed the last one which touched the code, but the bug was
introduced earlier than that, by commit a61ea561c871 ("mm/damon/sysfs: link
DAMON for virtual address spaces monitoring").

Also, let's add one space before the commit hash, then only 12 characters for
the hash, and then one line summary of the commit[1], like below.

Fixes: a61ea561c871 ("mm/damon/sysfs: link DAMON for virtual address spaces monitoring")

[1] https://www.kernel.org/doc/html/v4.15/process/submitting-patches.html#describe-your-changes

> Cc: <stable@vger.kernel.org>
> ---

Also, putting the change log of the patch here would be a good practice.

Other than the very minor things,

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


As the changes I'm requesting are very minor, I will revise and post a new
version of this patch on my own.


Thanks,
SJ

>  mm/damon/sysfs.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/mm/damon/sysfs.c b/mm/damon/sysfs.c
> index 7488e27c87c3..bdef9682d0a0 100644
> --- a/mm/damon/sysfs.c
> +++ b/mm/damon/sysfs.c
> @@ -2182,12 +2182,12 @@ static int damon_sysfs_add_target(struct damon_sysfs_target *sys_target,
>  
>  	if (!t)
>  		return -ENOMEM;
> +	damon_add_target(ctx, t);
>  	if (damon_target_has_pid(ctx)) {
>  		t->pid = find_get_pid(sys_target->pid);
>  		if (!t->pid)
>  			goto destroy_targets_out;
>  	}
> -	damon_add_target(ctx, t);
>  	err = damon_sysfs_set_regions(t, sys_target->regions);
>  	if (err)
>  		goto destroy_targets_out;
> -- 
> 2.35.1
> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-09-26 17:00 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-25 23:43 [PATCH v3] damon/sysfs: Fix possible memleak on damon_sysfs_add_target Levi Yun
2022-09-26 15:59 ` SeongJae Park

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).