On 06/15/2020 09:07 AM, Anshuman Khandual wrote: > This series adds some more arch page table helper validation tests which > are related to core and advanced memory functions. This also creates a > documentation, enlisting expected semantics for all page table helpers as > suggested by Mike Rapoport previously (https://lkml.org/lkml/2020/1/30/40). > > There are many TRANSPARENT_HUGEPAGE and ARCH_HAS_TRANSPARENT_HUGEPAGE_PUD > ifdefs scattered across the test. But consolidating all the fallback stubs > is not very straight forward because ARCH_HAS_TRANSPARENT_HUGEPAGE_PUD is > not explicitly dependent on ARCH_HAS_TRANSPARENT_HUGEPAGE. > > Tested on arm64, x86 platforms but only build tested on all other enabled > platforms through ARCH_HAS_DEBUG_VM_PGTABLE i.e powerpc, arc, s390. The > following failure on arm64 still exists which was mentioned previously. It > will be fixed with the upcoming THP migration on arm64 enablement series. > > WARNING .... mm/debug_vm_pgtable.c:860 debug_vm_pgtable+0x940/0xa54 > WARN_ON(!pmd_present(pmd_mkinvalid(pmd_mkhuge(pmd)))) > > This series is based on v5.8-rc1. > > Changes in V3: > > - Replaced HAVE_ARCH_SOFT_DIRTY with MEM_SOFT_DIRTY > - Added HAVE_ARCH_HUGE_VMAP checks in pxx_huge_tests() per Gerald > - Updated documentation for pmd_thp_tests() per Zi Yan > - Replaced READ_ONCE() with huge_ptep_get() per Gerald > - Added pte_mkhuge() and masking with PMD_MASK per Gerald > - Replaced pte_same() with holding pfn check in pxx_swap_tests() > - Added documentation for all (#ifdef #else #endif) per Gerald > - Updated pmd_protnone_tests() per Gerald > - Updated HugeTLB PTE creation in hugetlb_advanced_tests() per Gerald > - Replaced [pmd|pud]_mknotpresent() with [pmd|pud]_mkinvalid() > - Added has_transparent_hugepage() check for PMD and PUD tests > - Added a patch which debug prints all individual tests being executed > - Updated documentation for renamed [pmd|pud]_mkinvalid() helpers Hello Gerald/Christophe/Vineet, It would be really great if you could give this series a quick test on s390/ppc/arc platforms respectively. Thank you. - Anshuman