Linux kernel -stable discussions
 help / color / mirror / Atom feed
* [PATCH 6.1] Revert "fork: defer linking file vma until vma is fully initialized"
@ 2024-06-14  8:40 Sam James
  2024-06-19 10:54 ` Greg KH
  0 siblings, 1 reply; 2+ messages in thread
From: Sam James @ 2024-06-14  8:40 UTC (permalink / raw)
  To: stable; +Cc: Greg KH, leah.rumancik, Miaohe Lin, Sam James

This reverts commit 0c42f7e039aba3de6d7dbf92da708e2b2ecba557.

The backport is incomplete and causes xfstests failures. The consequences
of the incomplete backport seem worse than the original issue, so pick
the lesser evil and revert until a full backport is ready.

Link: https://lore.kernel.org/stable/20240604004751.3883227-1-leah.rumancik@gmail.com/
Reported-by: Leah Rumancik <leah.rumancik@gmail.com>
Signed-off-by: Sam James <sam@gentoo.org>
---
 kernel/fork.c | 18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/kernel/fork.c b/kernel/fork.c
index 7e9a5919299b4..85617928041cf 100644
--- a/kernel/fork.c
+++ b/kernel/fork.c
@@ -662,15 +662,6 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm,
 		} else if (anon_vma_fork(tmp, mpnt))
 			goto fail_nomem_anon_vma_fork;
 		tmp->vm_flags &= ~(VM_LOCKED | VM_LOCKONFAULT);
-		/*
-		 * Copy/update hugetlb private vma information.
-		 */
-		if (is_vm_hugetlb_page(tmp))
-			hugetlb_dup_vma_private(tmp);
-
-		if (tmp->vm_ops && tmp->vm_ops->open)
-			tmp->vm_ops->open(tmp);
-
 		file = tmp->vm_file;
 		if (file) {
 			struct address_space *mapping = file->f_mapping;
@@ -687,6 +678,12 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm,
 			i_mmap_unlock_write(mapping);
 		}
 
+		/*
+		 * Copy/update hugetlb private vma information.
+		 */
+		if (is_vm_hugetlb_page(tmp))
+			hugetlb_dup_vma_private(tmp);
+
 		/* Link the vma into the MT */
 		mas.index = tmp->vm_start;
 		mas.last = tmp->vm_end - 1;
@@ -698,6 +695,9 @@ static __latent_entropy int dup_mmap(struct mm_struct *mm,
 		if (!(tmp->vm_flags & VM_WIPEONFORK))
 			retval = copy_page_range(tmp, mpnt);
 
+		if (tmp->vm_ops && tmp->vm_ops->open)
+			tmp->vm_ops->open(tmp);
+
 		if (retval)
 			goto loop_out;
 	}
-- 
2.45.2


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

* Re: [PATCH 6.1] Revert "fork: defer linking file vma until vma is fully initialized"
  2024-06-14  8:40 [PATCH 6.1] Revert "fork: defer linking file vma until vma is fully initialized" Sam James
@ 2024-06-19 10:54 ` Greg KH
  0 siblings, 0 replies; 2+ messages in thread
From: Greg KH @ 2024-06-19 10:54 UTC (permalink / raw)
  To: Sam James; +Cc: stable, leah.rumancik, Miaohe Lin

On Fri, Jun 14, 2024 at 09:40:28AM +0100, Sam James wrote:
> This reverts commit 0c42f7e039aba3de6d7dbf92da708e2b2ecba557.
> 
> The backport is incomplete and causes xfstests failures. The consequences
> of the incomplete backport seem worse than the original issue, so pick
> the lesser evil and revert until a full backport is ready.
> 
> Link: https://lore.kernel.org/stable/20240604004751.3883227-1-leah.rumancik@gmail.com/
> Reported-by: Leah Rumancik <leah.rumancik@gmail.com>
> Signed-off-by: Sam James <sam@gentoo.org>
> ---
>  kernel/fork.c | 18 +++++++++---------
>  1 file changed, 9 insertions(+), 9 deletions(-)

Both reverts now queued up, thanks.

greg k-h

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

end of thread, other threads:[~2024-06-19 10:54 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-06-14  8:40 [PATCH 6.1] Revert "fork: defer linking file vma until vma is fully initialized" Sam James
2024-06-19 10:54 ` Greg KH

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox