All of
 help / color / mirror / Atom feed
* + mm-thp-skip-make-pmd-prot_none-if-thp-migration-is-not-supported.patch added to -mm tree
@ 2021-05-18 21:08 akpm
  0 siblings, 0 replies; only message in thread
From: akpm @ 2021-05-18 21:08 UTC (permalink / raw)
  To: borntraeger, gerald.schaefer, gor, hca, hughd, kirill.shutemov,
	mgorman, mhocko, mm-commits, shy828301, ying.huang, ziy

The patch titled
     Subject: mm: thp: skip make PMD PROT_NONE if THP migration is not supported
has been added to the -mm tree.  Its filename is

This patch should soon appear at
and later at

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: Yang Shi <>
Subject: mm: thp: skip make PMD PROT_NONE if THP migration is not supported

A quick grep shows x86_64, PowerPC (book3s), ARM64 and S390 support both
NUMA balancing and THP.  But S390 doesn't support THP migration so NUMA
balancing actually can't migrate any misplaced pages.

Skip make PMD PROT_NONE for such case otherwise CPU cycles may be wasted
by pointless NUMA hinting faults on S390.

Signed-off-by: Yang Shi <>
Acked-by: Mel Gorman <>
Cc: Christian Borntraeger <>
Cc: Gerald Schaefer <>
Cc: Heiko Carstens <>
Cc: Huang Ying <>
Cc: Hugh Dickins <>
Cc: Kirill A. Shutemov <>
Cc: Michal Hocko <>
Cc: Vasily Gorbik <>
Cc: Zi Yan <>
Signed-off-by: Andrew Morton <>

 mm/huge_memory.c |    4 ++++
 1 file changed, 4 insertions(+)

--- a/mm/huge_memory.c~mm-thp-skip-make-pmd-prot_none-if-thp-migration-is-not-supported
+++ a/mm/huge_memory.c
@@ -1741,6 +1741,7 @@ bool move_huge_pmd(struct vm_area_struct
  * Returns
  *  - 0 if PMD could not be locked
  *  - 1 if PMD was locked but protections unchanged and TLB flush unnecessary
+ *      or if prot_numa but THP migration is not supported
  *  - HPAGE_PMD_NR if protections changed and TLB flush necessary
 int change_huge_pmd(struct vm_area_struct *vma, pmd_t *pmd,
@@ -1755,6 +1756,9 @@ int change_huge_pmd(struct vm_area_struc
 	bool uffd_wp = cp_flags & MM_CP_UFFD_WP;
 	bool uffd_wp_resolve = cp_flags & MM_CP_UFFD_WP_RESOLVE;
+	if (prot_numa && !thp_migration_supported())
+		return 1;
 	ptl = __pmd_trans_huge_lock(pmd, vma);
 	if (!ptl)
 		return 0;

Patches currently in -mm which might be from are


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-05-18 21:08 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-05-18 21:08 + mm-thp-skip-make-pmd-prot_none-if-thp-migration-is-not-supported.patch added to -mm tree akpm

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.