diff options
Diffstat (limited to 'arch/sparc/mm/srmmu.c')
-rw-r--r-- | arch/sparc/mm/srmmu.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/arch/sparc/mm/srmmu.c b/arch/sparc/mm/srmmu.c index dc98e3844a0a..23d3291a3e81 100644 --- a/arch/sparc/mm/srmmu.c +++ b/arch/sparc/mm/srmmu.c | |||
@@ -489,14 +489,17 @@ srmmu_pte_alloc_one_kernel(struct mm_struct *mm, unsigned long address) | |||
489 | return (pte_t *)srmmu_get_nocache(PTE_SIZE, PTE_SIZE); | 489 | return (pte_t *)srmmu_get_nocache(PTE_SIZE, PTE_SIZE); |
490 | } | 490 | } |
491 | 491 | ||
492 | static struct page * | 492 | static pgtable_t |
493 | srmmu_pte_alloc_one(struct mm_struct *mm, unsigned long address) | 493 | srmmu_pte_alloc_one(struct mm_struct *mm, unsigned long address) |
494 | { | 494 | { |
495 | unsigned long pte; | 495 | unsigned long pte; |
496 | struct page *page; | ||
496 | 497 | ||
497 | if ((pte = (unsigned long)srmmu_pte_alloc_one_kernel(mm, address)) == 0) | 498 | if ((pte = (unsigned long)srmmu_pte_alloc_one_kernel(mm, address)) == 0) |
498 | return NULL; | 499 | return NULL; |
499 | return pfn_to_page( __nocache_pa(pte) >> PAGE_SHIFT ); | 500 | page = pfn_to_page( __nocache_pa(pte) >> PAGE_SHIFT ); |
501 | pgtable_page_ctor(page); | ||
502 | return page; | ||
500 | } | 503 | } |
501 | 504 | ||
502 | static void srmmu_free_pte_fast(pte_t *pte) | 505 | static void srmmu_free_pte_fast(pte_t *pte) |
@@ -504,10 +507,11 @@ static void srmmu_free_pte_fast(pte_t *pte) | |||
504 | srmmu_free_nocache((unsigned long)pte, PTE_SIZE); | 507 | srmmu_free_nocache((unsigned long)pte, PTE_SIZE); |
505 | } | 508 | } |
506 | 509 | ||
507 | static void srmmu_pte_free(struct page *pte) | 510 | static void srmmu_pte_free(pgtable_t pte) |
508 | { | 511 | { |
509 | unsigned long p; | 512 | unsigned long p; |
510 | 513 | ||
514 | pgtable_page_dtor(pte); | ||
511 | p = (unsigned long)page_address(pte); /* Cached address (for test) */ | 515 | p = (unsigned long)page_address(pte); /* Cached address (for test) */ |
512 | if (p == 0) | 516 | if (p == 0) |
513 | BUG(); | 517 | BUG(); |