diff options
Diffstat (limited to 'arch/powerpc/mm')
-rw-r--r-- | arch/powerpc/mm/hash_utils_64.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/powerpc/mm/hash_utils_64.c b/arch/powerpc/mm/hash_utils_64.c index 8d5b4758c13a..f5bc1b213f24 100644 --- a/arch/powerpc/mm/hash_utils_64.c +++ b/arch/powerpc/mm/hash_utils_64.c | |||
@@ -516,7 +516,7 @@ static int __init htab_dt_scan_pftsize(unsigned long node, | |||
516 | 516 | ||
517 | static unsigned long __init htab_get_table_size(void) | 517 | static unsigned long __init htab_get_table_size(void) |
518 | { | 518 | { |
519 | unsigned long mem_size, rnd_mem_size, pteg_count; | 519 | unsigned long mem_size, rnd_mem_size, pteg_count, psize; |
520 | 520 | ||
521 | /* If hash size isn't already provided by the platform, we try to | 521 | /* If hash size isn't already provided by the platform, we try to |
522 | * retrieve it from the device-tree. If it's not there neither, we | 522 | * retrieve it from the device-tree. If it's not there neither, we |
@@ -534,7 +534,8 @@ static unsigned long __init htab_get_table_size(void) | |||
534 | rnd_mem_size <<= 1; | 534 | rnd_mem_size <<= 1; |
535 | 535 | ||
536 | /* # pages / 2 */ | 536 | /* # pages / 2 */ |
537 | pteg_count = max(rnd_mem_size >> (12 + 1), 1UL << 11); | 537 | psize = mmu_psize_defs[mmu_virtual_psize].shift; |
538 | pteg_count = max(rnd_mem_size >> (psize + 1), 1UL << 11); | ||
538 | 539 | ||
539 | return pteg_count << 7; | 540 | return pteg_count << 7; |
540 | } | 541 | } |