Message ID | 1494890909-247009-1-git-send-email-nitin.m.gupta@oracle.com |
---|---|
State | Accepted |
Delegated to: | David Miller |
Headers | show |
From: Nitin Gupta <nitin.m.gupta@oracle.com> Date: Mon, 15 May 2017 16:28:17 -0700 > An incorrect huge page alignment check caused > mmap failure for 64K pages when MAP_FIXED is used > with address not aligned to HPAGE_SIZE. > > Orabug: 25885991 > > Signed-off-by: Nitin Gupta <nitin.m.gupta@oracle.com> Applied, but I had to add an appropriate "Fixes: " line, please do this in the future, like so on the line right before the first signoff or ack: Fixes: dcd1912d21a0 ("sparc64: Add 64K page size support") Thanks. -- To unsubscribe from this list: send the line "unsubscribe sparclinux" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/arch/sparc/include/asm/hugetlb.h b/arch/sparc/include/asm/hugetlb.h index dcbf985..d1f837d 100644 --- a/arch/sparc/include/asm/hugetlb.h +++ b/arch/sparc/include/asm/hugetlb.h @@ -24,9 +24,11 @@ static inline int is_hugepage_only_range(struct mm_struct *mm, static inline int prepare_hugepage_range(struct file *file, unsigned long addr, unsigned long len) { - if (len & ~HPAGE_MASK) + struct hstate *h = hstate_file(file); + + if (len & ~huge_page_mask(h)) return -EINVAL; - if (addr & ~HPAGE_MASK) + if (addr & ~huge_page_mask(h)) return -EINVAL; return 0; }
An incorrect huge page alignment check caused mmap failure for 64K pages when MAP_FIXED is used with address not aligned to HPAGE_SIZE. Orabug: 25885991 Signed-off-by: Nitin Gupta <nitin.m.gupta@oracle.com> --- arch/sparc/include/asm/hugetlb.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-)