diff --git a/[refs] b/[refs] index 7de06cec67aa..511a22db2ee5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 856fc29505556cf263f3dcda2533cf3766c14ab6 +refs/heads/master: ebed4bfc8da8df5b6b0bc4a5064a949f04683509 diff --git a/trunk/mm/hugetlb.c b/trunk/mm/hugetlb.c index 2dbec90dc3ba..a088f593a807 100644 --- a/trunk/mm/hugetlb.c +++ b/trunk/mm/hugetlb.c @@ -478,6 +478,9 @@ int hugetlb_no_page(struct mm_struct *mm, struct vm_area_struct *vma, retry: page = find_lock_page(mapping, idx); if (!page) { + size = i_size_read(mapping->host) >> HPAGE_SHIFT; + if (idx >= size) + goto out; if (hugetlb_get_quota(mapping)) goto out; page = alloc_huge_page(vma, address);