All of lore.kernel.org
 help / color / mirror / Atom feed
* + mm-start-tracking-vmas-with-maple-tree-fix.patch added to -mm tree
@ 2022-04-20 22:20 Andrew Morton
  0 siblings, 0 replies; 5+ messages in thread
From: Andrew Morton @ 2022-04-20 22:20 UTC (permalink / raw)
  To: mm-commits, yuzhao, Liam.Howlett, akpm


The patch titled
     Subject: mm: fix commit "mm: start tracking VMAs with maple tree"
has been added to the -mm tree.  Its filename is
     mm-start-tracking-vmas-with-maple-tree-fix.patch

This patch should soon appear at
    https://ozlabs.org/~akpm/mmots/broken-out/mm-start-tracking-vmas-with-maple-tree-fix.patch
and later at
    https://ozlabs.org/~akpm/mmotm/broken-out/mm-start-tracking-vmas-with-maple-tree-fix.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: "Liam R. Howlett" <Liam.Howlett@oracle.com>
Subject: mm: fix commit "mm: start tracking VMAs with maple tree"

Hold the lock for the destruction of the maple tree to avoid lockdep
issues - and potentially process_mrelease.

Link: https://lkml.kernel.org/r/20220420134336.bny7wza3ez2ldjsd@revolver
Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com>
Reported-by: Yu Zhao <yuzhao@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---

 mm/mmap.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

--- a/mm/mmap.c~mm-start-tracking-vmas-with-maple-tree-fix
+++ a/mm/mmap.c
@@ -3319,9 +3319,9 @@ void exit_mmap(struct mm_struct *mm)
 		cond_resched();
 	}
 	mm->mmap = NULL;
-	mmap_write_unlock(mm);
 	trace_exit_mmap(mm);
 	__mt_destroy(&mm->mm_mt);
+	mmap_write_unlock(mm);
 	vm_unacct_memory(nr_accounted);
 }
 
_

Patches currently in -mm which might be from Liam.Howlett@oracle.com are

maple-tree-add-new-data-structure-fix-2.patch
mm-start-tracking-vmas-with-maple-tree-fix.patch


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

* Re: + mm-start-tracking-vmas-with-maple-tree-fix.patch added to -mm tree
  2022-04-28 18:10   ` Andrew Morton
@ 2022-04-28 19:47     ` Liam Howlett
  0 siblings, 0 replies; 5+ messages in thread
From: Liam Howlett @ 2022-04-28 19:47 UTC (permalink / raw)
  To: Andrew Morton; +Cc: mm-commits, sfr, quic_qiancai

[-- Attachment #1: Type: text/plain, Size: 1369 bytes --]

* Andrew Morton <akpm@linux-foundation.org> [220428 14:11]:
> On Thu, 28 Apr 2022 17:35:17 +0000 Liam Howlett <liam.howlett@oracle.com> wrote:
> 
> > * Andrew Morton <akpm@linux-foundation.org> [220427 18:57]:
> > > 
> > > The patch titled
> > >      Subject: mm/mmap: fix __vma_adjust() memory leak
> > > has been added to the -mm tree.  Its filename is
> > >      mm-start-tracking-vmas-with-maple-tree-fix.patch
> > > 
> > > This patch should soon appear at
> > >     https://ozlabs.org/~akpm/mmots/broken-out/mm-start-tracking-vmas-with-maple-tree-fix.patch
> > > and later at
> > >     https://ozlabs.org/~akpm/mmotm/broken-out/mm-start-tracking-vmas-with-maple-tree-fix.patch
> > 
> > Both of these links are 404 and the patch does not seem to be in
> > linux-next 20220428.  Is there any chance this was missed?
> 
> We're in the process of gitifying the -mm tree and there were glitches.
> Hopefully next -next will sort this out.
> 
> Please review the mm-everything branch at
> git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm to check that
> everything has landed correctly.
> 

Okay, this patch is not applied to the correct line number in that tree.

mas_destroy() should be called at line 905 before the validate_mm(), not
at the start of the function.

Besides that, everything looks to be in order.

Thanks,
Liam

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-mm-mmap-Fix-mas_destroy-location-in-__vma_adjust.patch --]
[-- Type: text/x-diff; name="0001-mm-mmap-Fix-mas_destroy-location-in-__vma_adjust.patch", Size: 951 bytes --]

From 8d388d51e169e512b863d90e8d7ee203619dfbd4 Mon Sep 17 00:00:00 2001
From: "Liam R. Howlett" <Liam.Howlett@oracle.com>
Date: Thu, 28 Apr 2022 15:46:56 -0400
Subject: [PATCH] mm/mmap: Fix mas_destroy() location in __vma_adjust()

Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com>
---
 mm/mmap.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/mm/mmap.c b/mm/mmap.c
index 10948bb29887..d5d216a628d0 100644
--- a/mm/mmap.c
+++ b/mm/mmap.c
@@ -655,8 +655,6 @@ int __vma_adjust(struct vm_area_struct *vma, unsigned long start,
 	MA_STATE(mas, &mm->mm_mt, 0, 0);
 	struct vm_area_struct *exporter = NULL, *importer = NULL;
 
-	mas_destroy(&mas);
-
 	if (next && !insert) {
 		if (end >= next->vm_end) {
 			/*
@@ -903,6 +901,7 @@ int __vma_adjust(struct vm_area_struct *vma, unsigned long start,
 		uprobe_mmap(insert);
 	}
 
+	mas_destroy(&mas);
 	validate_mm(mm);
 
 	return 0;
-- 
2.35.1


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

* Re: + mm-start-tracking-vmas-with-maple-tree-fix.patch added to -mm tree
  2022-04-28 17:35 ` Liam Howlett
@ 2022-04-28 18:10   ` Andrew Morton
  2022-04-28 19:47     ` Liam Howlett
  0 siblings, 1 reply; 5+ messages in thread
From: Andrew Morton @ 2022-04-28 18:10 UTC (permalink / raw)
  To: Liam Howlett; +Cc: mm-commits, sfr, quic_qiancai

On Thu, 28 Apr 2022 17:35:17 +0000 Liam Howlett <liam.howlett@oracle.com> wrote:

> * Andrew Morton <akpm@linux-foundation.org> [220427 18:57]:
> > 
> > The patch titled
> >      Subject: mm/mmap: fix __vma_adjust() memory leak
> > has been added to the -mm tree.  Its filename is
> >      mm-start-tracking-vmas-with-maple-tree-fix.patch
> > 
> > This patch should soon appear at
> >     https://ozlabs.org/~akpm/mmots/broken-out/mm-start-tracking-vmas-with-maple-tree-fix.patch
> > and later at
> >     https://ozlabs.org/~akpm/mmotm/broken-out/mm-start-tracking-vmas-with-maple-tree-fix.patch
> 
> Both of these links are 404 and the patch does not seem to be in
> linux-next 20220428.  Is there any chance this was missed?

We're in the process of gitifying the -mm tree and there were glitches.
Hopefully next -next will sort this out.

Please review the mm-everything branch at
git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm to check that
everything has landed correctly.


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

* Re: + mm-start-tracking-vmas-with-maple-tree-fix.patch added to -mm tree
  2022-04-27 22:56 Andrew Morton
@ 2022-04-28 17:35 ` Liam Howlett
  2022-04-28 18:10   ` Andrew Morton
  0 siblings, 1 reply; 5+ messages in thread
From: Liam Howlett @ 2022-04-28 17:35 UTC (permalink / raw)
  To: Andrew Morton; +Cc: mm-commits, sfr, quic_qiancai

* Andrew Morton <akpm@linux-foundation.org> [220427 18:57]:
> 
> The patch titled
>      Subject: mm/mmap: fix __vma_adjust() memory leak
> has been added to the -mm tree.  Its filename is
>      mm-start-tracking-vmas-with-maple-tree-fix.patch
> 
> This patch should soon appear at
>     https://ozlabs.org/~akpm/mmots/broken-out/mm-start-tracking-vmas-with-maple-tree-fix.patch
> and later at
>     https://ozlabs.org/~akpm/mmotm/broken-out/mm-start-tracking-vmas-with-maple-tree-fix.patch

Both of these links are 404 and the patch does not seem to be in
linux-next 20220428.  Is there any chance this was missed?

Thanks,
Liam

> 
> 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: "Liam R. Howlett" <Liam.Howlett@oracle.com>
> Subject: mm/mmap: fix __vma_adjust() memory leak
> 
> When shifting the arg pages, the maple state may be left with allocated
> memory.  Free the memory by calling mas_destroy() unconditionally at the
> end of the function.
> 
> Link: https://lkml.kernel.org/r/20220427224134.yurrplclbhmnrloj@revolver
> Fixes: bd6a1fd58daf (mm: start tracking VMAs with maple tree)
> Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com>
> Reported-by: Qian Cai <quic_qiancai@quicinc.com>
> Cc: Stephen Rothwell <sfr@canb.auug.org.au>
> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
> ---
> 
>  mm/mmap.c |    1 +
>  1 file changed, 1 insertion(+)
> 
> --- a/mm/mmap.c~mm-start-tracking-vmas-with-maple-tree-fix
> +++ a/mm/mmap.c
> @@ -864,6 +864,7 @@ int __vma_adjust(struct vm_area_struct *
>  	MA_STATE(mas, &mm->mm_mt, 0, 0);
>  	struct vm_area_struct *exporter = NULL, *importer = NULL;
>  
> +	mas_destroy(&mas);
>  	validate_mm(mm);
>  	validate_mm_mt(mm);
>  
> _
> 
> Patches currently in -mm which might be from Liam.Howlett@oracle.com are
> 
> mm-start-tracking-vmas-with-maple-tree-fix.patch
> 

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

* + mm-start-tracking-vmas-with-maple-tree-fix.patch added to -mm tree
@ 2022-04-27 22:56 Andrew Morton
  2022-04-28 17:35 ` Liam Howlett
  0 siblings, 1 reply; 5+ messages in thread
From: Andrew Morton @ 2022-04-27 22:56 UTC (permalink / raw)
  To: mm-commits, sfr, quic_qiancai, Liam.Howlett, akpm


The patch titled
     Subject: mm/mmap: fix __vma_adjust() memory leak
has been added to the -mm tree.  Its filename is
     mm-start-tracking-vmas-with-maple-tree-fix.patch

This patch should soon appear at
    https://ozlabs.org/~akpm/mmots/broken-out/mm-start-tracking-vmas-with-maple-tree-fix.patch
and later at
    https://ozlabs.org/~akpm/mmotm/broken-out/mm-start-tracking-vmas-with-maple-tree-fix.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: "Liam R. Howlett" <Liam.Howlett@oracle.com>
Subject: mm/mmap: fix __vma_adjust() memory leak

When shifting the arg pages, the maple state may be left with allocated
memory.  Free the memory by calling mas_destroy() unconditionally at the
end of the function.

Link: https://lkml.kernel.org/r/20220427224134.yurrplclbhmnrloj@revolver
Fixes: bd6a1fd58daf (mm: start tracking VMAs with maple tree)
Signed-off-by: Liam R. Howlett <Liam.Howlett@oracle.com>
Reported-by: Qian Cai <quic_qiancai@quicinc.com>
Cc: Stephen Rothwell <sfr@canb.auug.org.au>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
---

 mm/mmap.c |    1 +
 1 file changed, 1 insertion(+)

--- a/mm/mmap.c~mm-start-tracking-vmas-with-maple-tree-fix
+++ a/mm/mmap.c
@@ -864,6 +864,7 @@ int __vma_adjust(struct vm_area_struct *
 	MA_STATE(mas, &mm->mm_mt, 0, 0);
 	struct vm_area_struct *exporter = NULL, *importer = NULL;
 
+	mas_destroy(&mas);
 	validate_mm(mm);
 	validate_mm_mt(mm);
 
_

Patches currently in -mm which might be from Liam.Howlett@oracle.com are

mm-start-tracking-vmas-with-maple-tree-fix.patch


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

end of thread, other threads:[~2022-04-28 19:47 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-04-20 22:20 + mm-start-tracking-vmas-with-maple-tree-fix.patch added to -mm tree Andrew Morton
2022-04-27 22:56 Andrew Morton
2022-04-28 17:35 ` Liam Howlett
2022-04-28 18:10   ` Andrew Morton
2022-04-28 19:47     ` Liam Howlett

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.