Re: FAILED: patch "[PATCH] mm/hugetlb: avoid corrupting page->mapping in" failed to apply to 5.15-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Aug 29, 2022 at 12:38 AM <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
>
>
> The patch below does not apply to the 5.15-stable tree.
> If someone wants it applied there, or to any other stable or longterm
> tree, then please email the backport, including the original git commit
> id to <stable@xxxxxxxxxxxxxxx>.

I'm in favor of applying this to 5.15. I can send a backport, unless
someone else was already planning to do it (don't want to duplicate
effort)?

>
> thanks,
>
> greg k-h
>
> ------------------ original commit in Linus's tree ------------------
>
> From ab74ef708dc51df7cf2b8a890b9c6990fac5c0c6 Mon Sep 17 00:00:00 2001
> From: Miaohe Lin <linmiaohe@xxxxxxxxxx>
> Date: Tue, 12 Jul 2022 21:05:42 +0800
> Subject: [PATCH] mm/hugetlb: avoid corrupting page->mapping in
>  hugetlb_mcopy_atomic_pte
>
> In MCOPY_ATOMIC_CONTINUE case with a non-shared VMA, pages in the page
> cache are installed in the ptes.  But hugepage_add_new_anon_rmap is called
> for them mistakenly because they're not vm_shared.  This will corrupt the
> page->mapping used by page cache code.
>
> Link: https://lkml.kernel.org/r/20220712130542.18836-1-linmiaohe@xxxxxxxxxx
> Fixes: f619147104c8 ("userfaultfd: add UFFDIO_CONTINUE ioctl")
> Signed-off-by: Miaohe Lin <linmiaohe@xxxxxxxxxx>
> Reviewed-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
> Cc: Axel Rasmussen <axelrasmussen@xxxxxxxxxx>
> Cc: Peter Xu <peterx@xxxxxxxxxx>
> Cc: <stable@xxxxxxxxxxxxxxx>
> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
>
> diff --git a/mm/hugetlb.c b/mm/hugetlb.c
> index 2480ba627aa5..e070b8593b37 100644
> --- a/mm/hugetlb.c
> +++ b/mm/hugetlb.c
> @@ -6041,7 +6041,7 @@ int hugetlb_mcopy_atomic_pte(struct mm_struct *dst_mm,
>         if (!huge_pte_none_mostly(huge_ptep_get(dst_pte)))
>                 goto out_release_unlock;
>
> -       if (vm_shared) {
> +       if (page_in_pagecache) {
>                 page_dup_file_rmap(page, true);
>         } else {
>                 ClearHPageRestoreReserve(page);
>



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux