diff options
Diffstat (limited to 'arch/powerpc/mm/hugetlbpage.c')
-rw-r--r-- | arch/powerpc/mm/hugetlbpage.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/arch/powerpc/mm/hugetlbpage.c b/arch/powerpc/mm/hugetlbpage.c index c46ef2ffa3d9..90df6ffe3a43 100644 --- a/arch/powerpc/mm/hugetlbpage.c +++ b/arch/powerpc/mm/hugetlbpage.c | |||
@@ -57,8 +57,10 @@ unsigned int mmu_huge_psizes[MMU_PAGE_COUNT] = { }; /* initialize all to 0 */ | |||
57 | #define HUGEPTE_CACHE_NAME(psize) (huge_pgtable_cache_name[psize]) | 57 | #define HUGEPTE_CACHE_NAME(psize) (huge_pgtable_cache_name[psize]) |
58 | 58 | ||
59 | static const char *huge_pgtable_cache_name[MMU_PAGE_COUNT] = { | 59 | static const char *huge_pgtable_cache_name[MMU_PAGE_COUNT] = { |
60 | "unused_4K", "hugepte_cache_64K", "unused_64K_AP", | 60 | [MMU_PAGE_64K] = "hugepte_cache_64K", |
61 | "hugepte_cache_1M", "hugepte_cache_16M", "hugepte_cache_16G" | 61 | [MMU_PAGE_1M] = "hugepte_cache_1M", |
62 | [MMU_PAGE_16M] = "hugepte_cache_16M", | ||
63 | [MMU_PAGE_16G] = "hugepte_cache_16G", | ||
62 | }; | 64 | }; |
63 | 65 | ||
64 | /* Flag to mark huge PD pointers. This means pmd_bad() and pud_bad() | 66 | /* Flag to mark huge PD pointers. This means pmd_bad() and pud_bad() |
@@ -700,6 +702,8 @@ static void __init set_huge_psize(int psize) | |||
700 | if (mmu_huge_psizes[psize] || | 702 | if (mmu_huge_psizes[psize] || |
701 | mmu_psize_defs[psize].shift == PAGE_SHIFT) | 703 | mmu_psize_defs[psize].shift == PAGE_SHIFT) |
702 | return; | 704 | return; |
705 | if (WARN_ON(HUGEPTE_CACHE_NAME(psize) == NULL)) | ||
706 | return; | ||
703 | hugetlb_add_hstate(mmu_psize_defs[psize].shift - PAGE_SHIFT); | 707 | hugetlb_add_hstate(mmu_psize_defs[psize].shift - PAGE_SHIFT); |
704 | 708 | ||
705 | switch (mmu_psize_defs[psize].shift) { | 709 | switch (mmu_psize_defs[psize].shift) { |