[PATCH 0/3] Fix CONT-PTE/PMD size hugetlb issue when unmapping or migrating

From: Baolin Wang
Date: Fri Apr 29 2022 - 04:15:54 EST


Hi,

Now migrating a hugetlb page or unmapping a poisoned hugetlb page, we'll
use ptep_clear_flush() and set_pte_at() to nuke the page table entry
and remap it, and this is incorrect for CONT-PTE or CONT-PMD size hugetlb
page, which will cause potential data consistent issue. This patch set
will change to use hugetlb related APIs to fix this issue, please find
details in each patch. Thanks.

Baolin Wang (3):
mm: change huge_ptep_clear_flush() to return the original pte
mm: rmap: Fix CONT-PTE/PMD size hugetlb issue when migration
mm: rmap: Fix CONT-PTE/PMD size hugetlb issue when unmapping

arch/arm64/include/asm/hugetlb.h | 4 +--
arch/arm64/mm/hugetlbpage.c | 12 ++++----
arch/ia64/include/asm/hugetlb.h | 4 +--
arch/mips/include/asm/hugetlb.h | 9 ++++--
arch/parisc/include/asm/hugetlb.h | 4 +--
arch/powerpc/include/asm/hugetlb.h | 9 ++++--
arch/s390/include/asm/hugetlb.h | 6 ++--
arch/sh/include/asm/hugetlb.h | 4 +--
arch/sparc/include/asm/hugetlb.h | 4 +--
include/asm-generic/hugetlb.h | 4 +--
mm/rmap.c | 58 +++++++++++++++++++++++---------------
11 files changed, 67 insertions(+), 51 deletions(-)

--
1.8.3.1