hc
2023-12-11 1f93a7dfd1f8d5ff7a5c53246c7534fe2332d6f4
kernel/arch/sparc/include/asm/pgalloc_32.h
....@@ -4,9 +4,9 @@
44
55 #include <linux/kernel.h>
66 #include <linux/sched.h>
7
+#include <linux/pgtable.h>
78
89 #include <asm/pgtsrmmu.h>
9
-#include <asm/pgtable.h>
1010 #include <asm/vaddrs.h>
1111 #include <asm/page.h>
1212
....@@ -17,8 +17,6 @@
1717
1818 extern struct resource sparc_iomap;
1919
20
-#define check_pgt_cache() do { } while (0)
21
-
2220 pgd_t *get_pgd_fast(void);
2321 static inline void free_pgd_fast(pgd_t *pgd)
2422 {
....@@ -28,14 +26,14 @@
2826 #define pgd_free(mm, pgd) free_pgd_fast(pgd)
2927 #define pgd_alloc(mm) get_pgd_fast()
3028
31
-static inline void pgd_set(pgd_t * pgdp, pmd_t * pmdp)
29
+static inline void pud_set(pud_t * pudp, pmd_t * pmdp)
3230 {
3331 unsigned long pa = __nocache_pa(pmdp);
3432
35
- set_pte((pte_t *)pgdp, __pte((SRMMU_ET_PTD | (pa >> 4))));
33
+ set_pte((pte_t *)pudp, __pte((SRMMU_ET_PTD | (pa >> 4))));
3634 }
3735
38
-#define pgd_populate(MM, PGD, PMD) pgd_set(PGD, PMD)
36
+#define pud_populate(MM, PGD, PMD) pud_set(PGD, PMD)
3937
4038 static inline pmd_t *pmd_alloc_one(struct mm_struct *mm,
4139 unsigned long address)
....@@ -52,24 +50,24 @@
5250 #define pmd_free(mm, pmd) free_pmd_fast(pmd)
5351 #define __pmd_free_tlb(tlb, pmd, addr) pmd_free((tlb)->mm, pmd)
5452
55
-void pmd_populate(struct mm_struct *mm, pmd_t *pmdp, struct page *ptep);
56
-#define pmd_pgtable(pmd) pmd_page(pmd)
53
+#define pmd_populate(mm, pmd, pte) pmd_set(pmd, pte)
54
+#define pmd_pgtable(pmd) (pgtable_t)__pmd_page(pmd)
5755
5856 void pmd_set(pmd_t *pmdp, pte_t *ptep);
59
-#define pmd_populate_kernel(MM, PMD, PTE) pmd_set(PMD, PTE)
57
+#define pmd_populate_kernel pmd_populate
6058
61
-pgtable_t pte_alloc_one(struct mm_struct *mm, unsigned long address);
59
+pgtable_t pte_alloc_one(struct mm_struct *mm);
6260
63
-static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm,
64
- unsigned long address)
61
+static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm)
6562 {
66
- return srmmu_get_nocache(PTE_SIZE, PTE_SIZE);
63
+ return srmmu_get_nocache(SRMMU_PTE_TABLE_SIZE,
64
+ SRMMU_PTE_TABLE_SIZE);
6765 }
6866
6967
7068 static inline void free_pte_fast(pte_t *pte)
7169 {
72
- srmmu_free_nocache(pte, PTE_SIZE);
70
+ srmmu_free_nocache(pte, SRMMU_PTE_TABLE_SIZE);
7371 }
7472
7573 #define pte_free_kernel(mm, pte) free_pte_fast(pte)