--- v3
+++ v1
@@ -3,63 +3,49 @@
Signed-off-by: Vishal Moola (Oracle) <vishal.moola@gmail.com>
---
- include/linux/mm.h | 14 +++++++-------
- 1 file changed, 7 insertions(+), 7 deletions(-)
+ include/linux/mm.h | 10 +++++-----
+ 1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/include/linux/mm.h b/include/linux/mm.h
-index 8e63e60c399c..bc2f139de4e7 100644
+index d2485a110936..2390fc2542aa 100644
--- a/include/linux/mm.h
+++ b/include/linux/mm.h
-@@ -2838,7 +2838,7 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd)
- return ptlock_ptr(page_ptdesc(pmd_page(*pmd)));
+@@ -2911,12 +2911,12 @@ static inline bool pmd_ptlock_init(struct ptdesc *ptdesc)
+ return ptlock_init(ptdesc);
}
--static inline bool ptlock_init(struct page *page)
-+static inline bool ptlock_init(struct ptdesc *ptdesc)
+-static inline void pmd_ptlock_free(struct page *page)
++static inline void pmd_ptlock_free(struct ptdesc *ptdesc)
{
- /*
- * prep_new_page() initialize page->private (and therefore page->ptl)
-@@ -2847,10 +2847,10 @@ static inline bool ptlock_init(struct page *page)
- * It can happen if arch try to use slab for page table allocation:
- * slab code uses page->slab_cache, which share storage with page->ptl.
- */
-- VM_BUG_ON_PAGE(*(unsigned long *)&page->ptl, page);
-- if (!ptlock_alloc(page_ptdesc(page)))
-+ VM_BUG_ON_PAGE(*(unsigned long *)&ptdesc->ptl, ptdesc_page(ptdesc));
-+ if (!ptlock_alloc(ptdesc))
- return false;
-- spin_lock_init(ptlock_ptr(page_ptdesc(page)));
-+ spin_lock_init(ptlock_ptr(ptdesc));
- return true;
+ #ifdef CONFIG_TRANSPARENT_HUGEPAGE
+- VM_BUG_ON_PAGE(page->pmd_huge_pte, page);
++ VM_BUG_ON_PAGE(ptdesc->pmd_huge_pte, ptdesc_page(ptdesc));
+ #endif
+- ptlock_free(page);
++ ptlock_free(ptdesc_page(ptdesc));
}
-@@ -2863,13 +2863,13 @@ static inline spinlock_t *pte_lockptr(struct mm_struct *mm, pmd_t *pmd)
- return &mm->page_table_lock;
- }
- static inline void ptlock_cache_init(void) {}
--static inline bool ptlock_init(struct page *page) { return true; }
-+static inline bool ptlock_init(struct ptdesc *ptdesc) { return true; }
- static inline void ptlock_free(struct page *page) {}
- #endif /* USE_SPLIT_PTE_PTLOCKS */
-
- static inline bool pgtable_pte_page_ctor(struct page *page)
- {
-- if (!ptlock_init(page))
-+ if (!ptlock_init(page_ptdesc(page)))
- return false;
- __SetPageTable(page);
- inc_lruvec_page_state(page, NR_PAGETABLE);
-@@ -2928,7 +2928,7 @@ static inline bool pmd_ptlock_init(struct ptdesc *ptdesc)
- #ifdef CONFIG_TRANSPARENT_HUGEPAGE
- ptdesc->pmd_huge_pte = NULL;
- #endif
-- return ptlock_init(ptdesc_page(ptdesc));
-+ return ptlock_init(ptdesc);
+ #define pmd_huge_pte(mm, pmd) (pmd_ptdesc(pmd)->pmd_huge_pte)
+@@ -2929,7 +2929,7 @@ static inline spinlock_t *pmd_lockptr(struct mm_struct *mm, pmd_t *pmd)
}
- static inline void pmd_ptlock_free(struct page *page)
+ static inline bool pmd_ptlock_init(struct ptdesc *ptdesc) { return true; }
+-static inline void pmd_ptlock_free(struct page *page) {}
++static inline void pmd_ptlock_free(struct ptdesc *ptdesc) {}
+
+ #define pmd_huge_pte(mm, pmd) ((mm)->pmd_huge_pte)
+
+@@ -2953,7 +2953,7 @@ static inline bool pgtable_pmd_page_ctor(struct page *page)
+
+ static inline void pgtable_pmd_page_dtor(struct page *page)
+ {
+- pmd_ptlock_free(page);
++ pmd_ptlock_free(page_ptdesc(page));
+ __ClearPageTable(page);
+ dec_lruvec_page_state(page, NR_PAGETABLE);
+ }
--
-2.40.1
+2.39.2
_______________________________________________