Andrew, Anybody ? Can I have an -mm ack for this ? Cheers, Ben. On Tue, 2011-06-28 at 14:54 -0500, Becky Bruce wrote: > From: Becky Bruce <beckyb@xxxxxxxxxxxxxxxxxxx> > > This: > > vma->vm_pgoff & ~(huge_page_mask(h) >> PAGE_SHIFT) > > is incorrect on 32-bit. It causes us to & the pgoff with > something that looks like this (for a 4m hugepage): 0xfff003ff. > The mask should be flipped and *then* shifted, to give you > 0x0000_03fff. > > Signed-off-by: Becky Bruce <beckyb@xxxxxxxxxxxxxxxxxxx> > --- > fs/hugetlbfs/inode.c | 2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > > diff --git a/fs/hugetlbfs/inode.c b/fs/hugetlbfs/inode.c > index 7aafeb8..537a209 100644 > --- a/fs/hugetlbfs/inode.c > +++ b/fs/hugetlbfs/inode.c > @@ -94,7 +94,7 @@ static int hugetlbfs_file_mmap(struct file *file, struct vm_area_struct *vma) > vma->vm_flags |= VM_HUGETLB | VM_RESERVED; > vma->vm_ops = &hugetlb_vm_ops; > > - if (vma->vm_pgoff & ~(huge_page_mask(h) >> PAGE_SHIFT)) > + if (vma->vm_pgoff & (~huge_page_mask(h) >> PAGE_SHIFT)) > return -EINVAL; > > vma_len = (loff_t)(vma->vm_end - vma->vm_start); -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>