@@ -112,7 +112,7 @@ pgprot_t phys_mem_access_prot(struct file *file, unsigned long pfn,
112112}
113113EXPORT_SYMBOL (phys_mem_access_prot );
114114
115- static phys_addr_t __init early_pgtable_alloc (enum pgtable_type pgtable_type )
115+ static phys_addr_t __init early_pgtable_alloc (enum pgtable_level pgtable_level )
116116{
117117 phys_addr_t phys ;
118118
@@ -197,7 +197,7 @@ static void init_pte(pte_t *ptep, unsigned long addr, unsigned long end,
197197static int alloc_init_cont_pte (pmd_t * pmdp , unsigned long addr ,
198198 unsigned long end , phys_addr_t phys ,
199199 pgprot_t prot ,
200- phys_addr_t (* pgtable_alloc )(enum pgtable_type ),
200+ phys_addr_t (* pgtable_alloc )(enum pgtable_level ),
201201 int flags )
202202{
203203 unsigned long next ;
@@ -212,7 +212,7 @@ static int alloc_init_cont_pte(pmd_t *pmdp, unsigned long addr,
212212 if (flags & NO_EXEC_MAPPINGS )
213213 pmdval |= PMD_TABLE_PXN ;
214214 BUG_ON (!pgtable_alloc );
215- pte_phys = pgtable_alloc (TABLE_PTE );
215+ pte_phys = pgtable_alloc (PGTABLE_LEVEL_PTE );
216216 if (pte_phys == INVALID_PHYS_ADDR )
217217 return - ENOMEM ;
218218 ptep = pte_set_fixmap (pte_phys );
@@ -252,7 +252,7 @@ static int alloc_init_cont_pte(pmd_t *pmdp, unsigned long addr,
252252
253253static int init_pmd (pmd_t * pmdp , unsigned long addr , unsigned long end ,
254254 phys_addr_t phys , pgprot_t prot ,
255- phys_addr_t (* pgtable_alloc )(enum pgtable_type ), int flags )
255+ phys_addr_t (* pgtable_alloc )(enum pgtable_level ), int flags )
256256{
257257 unsigned long next ;
258258
@@ -292,7 +292,7 @@ static int init_pmd(pmd_t *pmdp, unsigned long addr, unsigned long end,
292292static int alloc_init_cont_pmd (pud_t * pudp , unsigned long addr ,
293293 unsigned long end , phys_addr_t phys ,
294294 pgprot_t prot ,
295- phys_addr_t (* pgtable_alloc )(enum pgtable_type ),
295+ phys_addr_t (* pgtable_alloc )(enum pgtable_level ),
296296 int flags )
297297{
298298 int ret ;
@@ -311,7 +311,7 @@ static int alloc_init_cont_pmd(pud_t *pudp, unsigned long addr,
311311 if (flags & NO_EXEC_MAPPINGS )
312312 pudval |= PUD_TABLE_PXN ;
313313 BUG_ON (!pgtable_alloc );
314- pmd_phys = pgtable_alloc (TABLE_PMD );
314+ pmd_phys = pgtable_alloc (PGTABLE_LEVEL_PMD );
315315 if (pmd_phys == INVALID_PHYS_ADDR )
316316 return - ENOMEM ;
317317 pmdp = pmd_set_fixmap (pmd_phys );
@@ -349,7 +349,7 @@ static int alloc_init_cont_pmd(pud_t *pudp, unsigned long addr,
349349
350350static int alloc_init_pud (p4d_t * p4dp , unsigned long addr , unsigned long end ,
351351 phys_addr_t phys , pgprot_t prot ,
352- phys_addr_t (* pgtable_alloc )(enum pgtable_type ),
352+ phys_addr_t (* pgtable_alloc )(enum pgtable_level ),
353353 int flags )
354354{
355355 int ret = 0 ;
@@ -364,7 +364,7 @@ static int alloc_init_pud(p4d_t *p4dp, unsigned long addr, unsigned long end,
364364 if (flags & NO_EXEC_MAPPINGS )
365365 p4dval |= P4D_TABLE_PXN ;
366366 BUG_ON (!pgtable_alloc );
367- pud_phys = pgtable_alloc (TABLE_PUD );
367+ pud_phys = pgtable_alloc (PGTABLE_LEVEL_PUD );
368368 if (pud_phys == INVALID_PHYS_ADDR )
369369 return - ENOMEM ;
370370 pudp = pud_set_fixmap (pud_phys );
@@ -415,7 +415,7 @@ static int alloc_init_pud(p4d_t *p4dp, unsigned long addr, unsigned long end,
415415
416416static int alloc_init_p4d (pgd_t * pgdp , unsigned long addr , unsigned long end ,
417417 phys_addr_t phys , pgprot_t prot ,
418- phys_addr_t (* pgtable_alloc )(enum pgtable_type ),
418+ phys_addr_t (* pgtable_alloc )(enum pgtable_level ),
419419 int flags )
420420{
421421 int ret ;
@@ -430,7 +430,7 @@ static int alloc_init_p4d(pgd_t *pgdp, unsigned long addr, unsigned long end,
430430 if (flags & NO_EXEC_MAPPINGS )
431431 pgdval |= PGD_TABLE_PXN ;
432432 BUG_ON (!pgtable_alloc );
433- p4d_phys = pgtable_alloc (TABLE_P4D );
433+ p4d_phys = pgtable_alloc (PGTABLE_LEVEL_P4D );
434434 if (p4d_phys == INVALID_PHYS_ADDR )
435435 return - ENOMEM ;
436436 p4dp = p4d_set_fixmap (p4d_phys );
@@ -467,7 +467,7 @@ static int alloc_init_p4d(pgd_t *pgdp, unsigned long addr, unsigned long end,
467467static int __create_pgd_mapping_locked (pgd_t * pgdir , phys_addr_t phys ,
468468 unsigned long virt , phys_addr_t size ,
469469 pgprot_t prot ,
470- phys_addr_t (* pgtable_alloc )(enum pgtable_type ),
470+ phys_addr_t (* pgtable_alloc )(enum pgtable_level ),
471471 int flags )
472472{
473473 int ret ;
@@ -500,7 +500,7 @@ static int __create_pgd_mapping_locked(pgd_t *pgdir, phys_addr_t phys,
500500static int __create_pgd_mapping (pgd_t * pgdir , phys_addr_t phys ,
501501 unsigned long virt , phys_addr_t size ,
502502 pgprot_t prot ,
503- phys_addr_t (* pgtable_alloc )(enum pgtable_type ),
503+ phys_addr_t (* pgtable_alloc )(enum pgtable_level ),
504504 int flags )
505505{
506506 int ret ;
@@ -516,7 +516,7 @@ static int __create_pgd_mapping(pgd_t *pgdir, phys_addr_t phys,
516516static void early_create_pgd_mapping (pgd_t * pgdir , phys_addr_t phys ,
517517 unsigned long virt , phys_addr_t size ,
518518 pgprot_t prot ,
519- phys_addr_t (* pgtable_alloc )(enum pgtable_type ),
519+ phys_addr_t (* pgtable_alloc )(enum pgtable_level ),
520520 int flags )
521521{
522522 int ret ;
@@ -528,7 +528,7 @@ static void early_create_pgd_mapping(pgd_t *pgdir, phys_addr_t phys,
528528}
529529
530530static phys_addr_t __pgd_pgtable_alloc (struct mm_struct * mm , gfp_t gfp ,
531- enum pgtable_type pgtable_type )
531+ enum pgtable_level pgtable_level )
532532{
533533 /* Page is zeroed by init_clear_pgtable() so don't duplicate effort. */
534534 struct ptdesc * ptdesc = pagetable_alloc (gfp & ~__GFP_ZERO , 0 );
@@ -539,40 +539,43 @@ static phys_addr_t __pgd_pgtable_alloc(struct mm_struct *mm, gfp_t gfp,
539539
540540 pa = page_to_phys (ptdesc_page (ptdesc ));
541541
542- switch (pgtable_type ) {
543- case TABLE_PTE :
542+ switch (pgtable_level ) {
543+ case PGTABLE_LEVEL_PTE :
544544 BUG_ON (!pagetable_pte_ctor (mm , ptdesc ));
545545 break ;
546- case TABLE_PMD :
546+ case PGTABLE_LEVEL_PMD :
547547 BUG_ON (!pagetable_pmd_ctor (mm , ptdesc ));
548548 break ;
549- case TABLE_PUD :
549+ case PGTABLE_LEVEL_PUD :
550550 pagetable_pud_ctor (ptdesc );
551551 break ;
552- case TABLE_P4D :
552+ case PGTABLE_LEVEL_P4D :
553553 pagetable_p4d_ctor (ptdesc );
554554 break ;
555+ case PGTABLE_LEVEL_PGD :
556+ VM_WARN_ON (1 );
557+ break ;
555558 }
556559
557560 return pa ;
558561}
559562
560563static phys_addr_t
561- pgd_pgtable_alloc_init_mm_gfp (enum pgtable_type pgtable_type , gfp_t gfp )
564+ pgd_pgtable_alloc_init_mm_gfp (enum pgtable_level pgtable_level , gfp_t gfp )
562565{
563- return __pgd_pgtable_alloc (& init_mm , gfp , pgtable_type );
566+ return __pgd_pgtable_alloc (& init_mm , gfp , pgtable_level );
564567}
565568
566569static phys_addr_t __maybe_unused
567- pgd_pgtable_alloc_init_mm (enum pgtable_type pgtable_type )
570+ pgd_pgtable_alloc_init_mm (enum pgtable_level pgtable_level )
568571{
569- return pgd_pgtable_alloc_init_mm_gfp (pgtable_type , GFP_PGTABLE_KERNEL );
572+ return pgd_pgtable_alloc_init_mm_gfp (pgtable_level , GFP_PGTABLE_KERNEL );
570573}
571574
572575static phys_addr_t
573- pgd_pgtable_alloc_special_mm (enum pgtable_type pgtable_type )
576+ pgd_pgtable_alloc_special_mm (enum pgtable_level pgtable_level )
574577{
575- return __pgd_pgtable_alloc (NULL , GFP_PGTABLE_KERNEL , pgtable_type );
578+ return __pgd_pgtable_alloc (NULL , GFP_PGTABLE_KERNEL , pgtable_level );
576579}
577580
578581static void split_contpte (pte_t * ptep )
@@ -593,7 +596,7 @@ static int split_pmd(pmd_t *pmdp, pmd_t pmd, gfp_t gfp, bool to_cont)
593596 pte_t * ptep ;
594597 int i ;
595598
596- pte_phys = pgd_pgtable_alloc_init_mm_gfp (TABLE_PTE , gfp );
599+ pte_phys = pgd_pgtable_alloc_init_mm_gfp (PGTABLE_LEVEL_PTE , gfp );
597600 if (pte_phys == INVALID_PHYS_ADDR )
598601 return - ENOMEM ;
599602 ptep = (pte_t * )phys_to_virt (pte_phys );
@@ -638,7 +641,7 @@ static int split_pud(pud_t *pudp, pud_t pud, gfp_t gfp, bool to_cont)
638641 pmd_t * pmdp ;
639642 int i ;
640643
641- pmd_phys = pgd_pgtable_alloc_init_mm_gfp (TABLE_PMD , gfp );
644+ pmd_phys = pgd_pgtable_alloc_init_mm_gfp (PGTABLE_LEVEL_PMD , gfp );
642645 if (pmd_phys == INVALID_PHYS_ADDR )
643646 return - ENOMEM ;
644647 pmdp = (pmd_t * )phys_to_virt (pmd_phys );
@@ -1226,7 +1229,7 @@ static void __init declare_vma(struct vm_struct *vma,
12261229
12271230static phys_addr_t kpti_ng_temp_alloc __initdata ;
12281231
1229- static phys_addr_t __init kpti_ng_pgd_alloc (enum pgtable_type type )
1232+ static phys_addr_t __init kpti_ng_pgd_alloc (enum pgtable_level pgtable_level )
12301233{
12311234 kpti_ng_temp_alloc -= PAGE_SIZE ;
12321235 return kpti_ng_temp_alloc ;
0 commit comments