On 5/6/2022 7:15 AM, Mike Kravetz wrote:
On 4/29/22 01:14, Baolin Wang wrote:
It is incorrect to use ptep_clear_flush() to nuke a hugetlb page
table when unmapping or migrating a hugetlb page, and will change
to use huge_ptep_clear_flush() instead in the following patches.
So this is a preparation patch, which changes the huge_ptep_clear_flush()
to return the original pte to help to nuke a hugetlb page table.
Signed-off-by: Baolin Wang <baolin.wang@xxxxxxxxxxxxxxxxx>
---
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 ++--
10 files changed, 32 insertions(+), 28 deletions(-)
The above changes look straight forward.
Happy that you Cc'ed impacted arch maintainers so they can at least
have a look.
The only user of huge_ptep_clear_flush() today is hugetlb_cow/wp() in
mm/hugetlb.c. Any reason why you did not change that code? At least
Cause we did not use the return value of huge_ptep_clear_flush() in
mm/hugetlb.c.
cast the return of huge_ptep_clear_flush() to void with a comment?
Sure. Will add an explicit casting in next version.
Not absolutely necessary.
Acked-by: Mike Kravetz <mike.kravetz@xxxxxxxxxx>
Thanks.