From: Peter Xu <peterx@redhat.com>
To: linux-kernel@vger.kernel.org, linux-mm@kvack.org
Cc: Axel Rasmussen <axelrasmussen@google.com>,
Andrew Morton <akpm@linux-foundation.org>,
peterx@redhat.com, Mike Kravetz <mike.kravetz@oracle.com>,
Mike Rapoport <rppt@linux.vnet.ibm.com>,
"Kirill A . Shutemov" <kirill@shutemov.name>,
Matthew Wilcox <willy@infradead.org>,
Andrea Arcangeli <aarcange@redhat.com>
Subject: [PATCH v3 0/4] hugetlb: Disable huge pmd unshare for uffd-wp
Date: Thu, 18 Feb 2021 16:54:30 -0500 [thread overview]
Message-ID: <20210218215434.10203-1-peterx@redhat.com> (raw)
v3:
- patch 4:
- fix build failure for !CMA and/or !HUGETLBFS [Axel]
- Fix mmu notifier range to use start/end [Mike]
- add more r-bs
v2:
- patch 4: move hugetlb_unshare_all_pmds() into mm/hugetlb.c, so it can be used
even outside userfaultfd.c
This series tries to disable huge pmd unshare of hugetlbfs backed memory for
uffd-wp. Although uffd-wp of hugetlbfs is still during rfc stage, the idea of
this series may be needed for multiple tasks (Axel's uffd minor fault series,
and Mike's soft dirty series), so I picked it out from the larger series.
References works:
Uffd shmem+hugetlbfs rfc:
https://lore.kernel.org/lkml/20210115170907.24498-1-peterx@redhat.com/
Uffd minor mode for hugetlbfs:
https://lore.kernel.org/lkml/20210212215403.3457686-1-axelrasmussen@google.com/
Soft dirty for hugetlbfs:
https://lore.kernel.org/lkml/20210211000322.159437-1-mike.kravetz@oracle.com/
Please review, thanks.
Peter Xu (4):
hugetlb: Pass vma into huge_pte_alloc() and huge_pmd_share()
hugetlb/userfaultfd: Forbid huge pmd sharing when uffd enabled
mm/hugetlb: Move flush_hugetlb_tlb_range() into hugetlb.h
hugetlb/userfaultfd: Unshare all pmds for hugetlbfs when register wp
arch/arm64/mm/hugetlbpage.c | 7 ++-
arch/ia64/mm/hugetlbpage.c | 3 +-
arch/mips/mm/hugetlbpage.c | 4 +-
arch/parisc/mm/hugetlbpage.c | 2 +-
arch/powerpc/mm/hugetlbpage.c | 3 +-
arch/s390/mm/hugetlbpage.c | 2 +-
arch/sh/mm/hugetlbpage.c | 2 +-
arch/sparc/mm/hugetlbpage.c | 1 +
fs/userfaultfd.c | 4 ++
include/linux/hugetlb.h | 18 ++++++-
include/linux/userfaultfd_k.h | 9 ++++
mm/hugetlb.c | 94 +++++++++++++++++++++++++++--------
mm/userfaultfd.c | 2 +-
13 files changed, 116 insertions(+), 35 deletions(-)
--
2.26.2
next reply other threads:[~2021-02-18 21:54 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-02-18 21:54 Peter Xu [this message]
2021-02-18 21:54 ` [PATCH v3 1/4] hugetlb: Pass vma into huge_pte_alloc() and huge_pmd_share() Peter Xu
2021-02-18 22:13 ` Mike Kravetz
2021-02-18 22:27 ` Peter Xu
2021-02-18 22:38 ` Mike Kravetz
2021-02-18 23:02 ` Peter Xu
2021-02-18 21:55 ` [PATCH v3 2/4] hugetlb/userfaultfd: Forbid huge pmd sharing when uffd enabled Peter Xu
2021-02-18 21:55 ` [PATCH v3 3/4] mm/hugetlb: Move flush_hugetlb_tlb_range() into hugetlb.h Peter Xu
2021-02-18 21:55 ` [PATCH v3 4/4] hugetlb/userfaultfd: Unshare all pmds for hugetlbfs when register wp Peter Xu
2021-02-18 22:18 ` Mike Kravetz
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=20210218215434.10203-1-peterx@redhat.com \
--to=peterx@redhat.com \
--cc=aarcange@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=axelrasmussen@google.com \
--cc=kirill@shutemov.name \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mike.kravetz@oracle.com \
--cc=rppt@linux.vnet.ibm.com \
--cc=willy@infradead.org \
/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 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.