diff options
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/mm/hugetlbpage.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/arch/powerpc/mm/hugetlbpage.c b/arch/powerpc/mm/hugetlbpage.c index ed0aab0208a..f1c2d55b437 100644 --- a/arch/powerpc/mm/hugetlbpage.c +++ b/arch/powerpc/mm/hugetlbpage.c | |||
@@ -736,14 +736,21 @@ static int __init hugetlbpage_init(void) | |||
736 | 736 | ||
737 | if (!cpu_has_feature(CPU_FTR_16M_PAGE)) | 737 | if (!cpu_has_feature(CPU_FTR_16M_PAGE)) |
738 | return -ENODEV; | 738 | return -ENODEV; |
739 | |||
739 | /* Add supported huge page sizes. Need to change HUGE_MAX_HSTATE | 740 | /* Add supported huge page sizes. Need to change HUGE_MAX_HSTATE |
740 | * and adjust PTE_NONCACHE_NUM if the number of supported huge page | 741 | * and adjust PTE_NONCACHE_NUM if the number of supported huge page |
741 | * sizes changes. | 742 | * sizes changes. |
742 | */ | 743 | */ |
743 | set_huge_psize(MMU_PAGE_16M); | 744 | set_huge_psize(MMU_PAGE_16M); |
744 | set_huge_psize(MMU_PAGE_64K); | ||
745 | set_huge_psize(MMU_PAGE_16G); | 745 | set_huge_psize(MMU_PAGE_16G); |
746 | 746 | ||
747 | /* Temporarily disable support for 64K huge pages when 64K SPU local | ||
748 | * store support is enabled as the current implementation conflicts. | ||
749 | */ | ||
750 | #ifndef CONFIG_SPU_FS_64K_LS | ||
751 | set_huge_psize(MMU_PAGE_64K); | ||
752 | #endif | ||
753 | |||
747 | for (psize = 0; psize < MMU_PAGE_COUNT; ++psize) { | 754 | for (psize = 0; psize < MMU_PAGE_COUNT; ++psize) { |
748 | if (mmu_huge_psizes[psize]) { | 755 | if (mmu_huge_psizes[psize]) { |
749 | huge_pgtable_cache(psize) = kmem_cache_create( | 756 | huge_pgtable_cache(psize) = kmem_cache_create( |