--- v6
+++ v4
@@ -1,45 +1,34 @@
-Part of the conversions to replace pgtable constructor/destructors with
-ptdesc equivalents. Also cleans up some spacing issues.
+Part of the conversions to replace pgtable pte constructor/destructors with
+ptdesc equivalents.
Signed-off-by: Vishal Moola (Oracle) <vishal.moola@gmail.com>
-Acked-by: Mike Rapoport (IBM) <rppt@kernel.org>
---
- arch/um/include/asm/pgalloc.h | 18 +++++++++---------
- 1 file changed, 9 insertions(+), 9 deletions(-)
+ arch/sparc/mm/srmmu.c | 5 +++--
+ 1 file changed, 3 insertions(+), 2 deletions(-)
-diff --git a/arch/um/include/asm/pgalloc.h b/arch/um/include/asm/pgalloc.h
-index 8ec7cd46dd96..de5e31c64793 100644
---- a/arch/um/include/asm/pgalloc.h
-+++ b/arch/um/include/asm/pgalloc.h
-@@ -25,19 +25,19 @@
- */
- extern pgd_t *pgd_alloc(struct mm_struct *);
+diff --git a/arch/sparc/mm/srmmu.c b/arch/sparc/mm/srmmu.c
+index 13f027afc875..8393faa3e596 100644
+--- a/arch/sparc/mm/srmmu.c
++++ b/arch/sparc/mm/srmmu.c
+@@ -355,7 +355,8 @@ pgtable_t pte_alloc_one(struct mm_struct *mm)
+ return NULL;
+ page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT);
+ spin_lock(&mm->page_table_lock);
+- if (page_ref_inc_return(page) == 2 && !pgtable_pte_page_ctor(page)) {
++ if (page_ref_inc_return(page) == 2 &&
++ !pagetable_pte_ctor(page_ptdesc(page))) {
+ page_ref_dec(page);
+ ptep = NULL;
+ }
+@@ -371,7 +372,7 @@ void pte_free(struct mm_struct *mm, pgtable_t ptep)
+ page = pfn_to_page(__nocache_pa((unsigned long)ptep) >> PAGE_SHIFT);
+ spin_lock(&mm->page_table_lock);
+ if (page_ref_dec_return(page) == 1)
+- pgtable_pte_page_dtor(page);
++ pagetable_pte_dtor(page_ptdesc(page));
+ spin_unlock(&mm->page_table_lock);
--#define __pte_free_tlb(tlb,pte, address) \
--do { \
-- pgtable_pte_page_dtor(pte); \
-- tlb_remove_page((tlb),(pte)); \
-+#define __pte_free_tlb(tlb, pte, address) \
-+do { \
-+ pagetable_pte_dtor(page_ptdesc(pte)); \
-+ tlb_remove_page_ptdesc((tlb), (page_ptdesc(pte))); \
- } while (0)
-
- #ifdef CONFIG_3_LEVEL_PGTABLES
-
--#define __pmd_free_tlb(tlb, pmd, address) \
--do { \
-- pgtable_pmd_page_dtor(virt_to_page(pmd)); \
-- tlb_remove_page((tlb),virt_to_page(pmd)); \
--} while (0) \
-+#define __pmd_free_tlb(tlb, pmd, address) \
-+do { \
-+ pagetable_pmd_dtor(virt_to_ptdesc(pmd)); \
-+ tlb_remove_page_ptdesc((tlb), virt_to_ptdesc(pmd)); \
-+} while (0)
-
- #endif
-
+ srmmu_free_nocache(ptep, SRMMU_PTE_TABLE_SIZE);
--
2.40.1