arm64: Fix typo in the pmdp_huge_get_and_clear() definition
authorCatalin Marinas <catalin.marinas@arm.com>
Thu, 5 May 2016 09:43:59 +0000 (10:43 +0100)
committerWill Deacon <will.deacon@arm.com>
Fri, 6 May 2016 11:46:53 +0000 (12:46 +0100)
With hardware AF/DBM support, pmd modifications (transparent huge pages)
should be performed atomically using load/store exclusive. The initial
patches defined the get-and-clear function and __HAVE_ARCH_* macro
without the "huge" word, leaving the pmdp_huge_get_and_clear() to the
default, non-atomic implementation.

Fixes: 2f4b829c625e ("arm64: Add support for hardware updates of the access and dirty pte bits")
Cc: <stable@vger.kernel.org> # 4.3+
Reviewed-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
arch/arm64/include/asm/pgtable.h

index 3eefc181d00b3649e72f6dfafcda34b9dc717b95..b0ad16f05bcc62164e1c2cfe1286cfb0d35b0e31 100644 (file)
@@ -592,9 +592,9 @@ static inline pte_t ptep_get_and_clear(struct mm_struct *mm,
 }
 
 #ifdef CONFIG_TRANSPARENT_HUGEPAGE
-#define __HAVE_ARCH_PMDP_GET_AND_CLEAR
-static inline pmd_t pmdp_get_and_clear(struct mm_struct *mm,
-                                      unsigned long address, pmd_t *pmdp)
+#define __HAVE_ARCH_PMDP_HUGE_GET_AND_CLEAR
+static inline pmd_t pmdp_huge_get_and_clear(struct mm_struct *mm,
+                                           unsigned long address, pmd_t *pmdp)
 {
        return pte_pmd(ptep_get_and_clear(mm, address, (pte_t *)pmdp));
 }