diff options
Diffstat (limited to 'arch/powerpc/mm/hugetlbpage.c')
-rw-r--r-- | arch/powerpc/mm/hugetlbpage.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/powerpc/mm/hugetlbpage.c b/arch/powerpc/mm/hugetlbpage.c index 0073a04047e4..426c269e552e 100644 --- a/arch/powerpc/mm/hugetlbpage.c +++ b/arch/powerpc/mm/hugetlbpage.c | |||
@@ -212,6 +212,12 @@ static int prepare_high_area_for_htlb(struct mm_struct *mm, unsigned long area) | |||
212 | 212 | ||
213 | BUG_ON(area >= NUM_HIGH_AREAS); | 213 | BUG_ON(area >= NUM_HIGH_AREAS); |
214 | 214 | ||
215 | /* Hack, so that each addresses is controlled by exactly one | ||
216 | * of the high or low area bitmaps, the first high area starts | ||
217 | * at 4GB, not 0 */ | ||
218 | if (start == 0) | ||
219 | start = 0x100000000UL; | ||
220 | |||
215 | /* Check no VMAs are in the region */ | 221 | /* Check no VMAs are in the region */ |
216 | vma = find_vma(mm, start); | 222 | vma = find_vma(mm, start); |
217 | if (vma && (vma->vm_start < end)) | 223 | if (vma && (vma->vm_start < end)) |