mm/debug_vm_pgtable: test pmd_leaf() behavior with pmd_mkinvalid()
authorRyan Roberts <ryan.roberts@arm.com>
Wed, 1 May 2024 14:44:39 +0000 (15:44 +0100)
committerAndrew Morton <akpm@linux-foundation.org>
Tue, 7 May 2024 17:37:00 +0000 (10:37 -0700)
An invalidated pmd should still cause pmd_leaf() to return true.  Let's
test for that to ensure all arches remain consistent.

Link: https://lkml.kernel.org/r/20240501144439.1389048-1-ryan.roberts@arm.com
Signed-off-by: Ryan Roberts <ryan.roberts@arm.com>
Reviewed-by: Anshuman Khandual <anshuman.khandual@arm.com>
Reviewed-by: David Hildenbrand <david@redhat.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
mm/debug_vm_pgtable.c

index f1c9a2c5abc04c11ef115f9fbe89251edfd0f77a..b104a353b532bff9d27d9f496d5490af70001c6a 100644 (file)
@@ -982,6 +982,7 @@ static void __init pmd_thp_tests(struct pgtable_debug_args *args)
 #ifndef __HAVE_ARCH_PMDP_INVALIDATE
        WARN_ON(!pmd_trans_huge(pmd_mkinvalid(pmd_mkhuge(pmd))));
        WARN_ON(!pmd_present(pmd_mkinvalid(pmd_mkhuge(pmd))));
+       WARN_ON(!pmd_leaf(pmd_mkinvalid(pmd_mkhuge(pmd))));
 #endif /* __HAVE_ARCH_PMDP_INVALIDATE */
 }