forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-10 9999e48639b3cecb08ffb37358bcba3b48161b29
kernel/arch/sh/mm/pgtable.c
....@@ -2,8 +2,6 @@
22 #include <linux/mm.h>
33 #include <linux/slab.h>
44
5
-#define PGALLOC_GFP GFP_KERNEL | __GFP_ZERO
6
-
75 static struct kmem_cache *pgd_cachep;
86 #if PAGETABLE_LEVELS > 2
97 static struct kmem_cache *pmd_cachep;
....@@ -13,6 +11,7 @@
1311 {
1412 pgd_t *pgd = x;
1513
14
+ memset(pgd, 0, USER_PTRS_PER_PGD * sizeof(pgd_t));
1615 memcpy(pgd + USER_PTRS_PER_PGD,
1716 swapper_pg_dir + USER_PTRS_PER_PGD,
1817 (PTRS_PER_PGD - USER_PTRS_PER_PGD) * sizeof(pgd_t));
....@@ -32,7 +31,7 @@
3231
3332 pgd_t *pgd_alloc(struct mm_struct *mm)
3433 {
35
- return kmem_cache_alloc(pgd_cachep, PGALLOC_GFP);
34
+ return kmem_cache_alloc(pgd_cachep, GFP_KERNEL);
3635 }
3736
3837 void pgd_free(struct mm_struct *mm, pgd_t *pgd)
....@@ -48,7 +47,7 @@
4847
4948 pmd_t *pmd_alloc_one(struct mm_struct *mm, unsigned long address)
5049 {
51
- return kmem_cache_alloc(pmd_cachep, PGALLOC_GFP);
50
+ return kmem_cache_alloc(pmd_cachep, GFP_KERNEL | __GFP_ZERO);
5251 }
5352
5453 void pmd_free(struct mm_struct *mm, pmd_t *pmd)