Add missing alignment check in arch/score sys_mmap()
authorAl Viro <viro@zeniv.linux.org.uk>
Fri, 11 Dec 2009 11:48:57 +0000 (06:48 -0500)
committerAl Viro <viro@zeniv.linux.org.uk>
Fri, 11 Dec 2009 11:48:57 +0000 (06:48 -0500)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
arch/score/kernel/sys_score.c

index 3d6a67d..856ed68 100644 (file)
@@ -41,10 +41,11 @@ sys_mmap2(unsigned long addr, unsigned long len, unsigned long prot,
 
 asmlinkage long
 sys_mmap(unsigned long addr, unsigned long len, unsigned long prot,
-       unsigned long flags, unsigned long fd, off_t pgoff)
+       unsigned long flags, unsigned long fd, off_t offset)
 {
-       /* where's the alignment check? */
-       return sys_mmap_pgoff(addr, len, prot, flags, fd, pgoff >> PAGE_SHIFT);
+       if (unlikely(offset & ~PAGE_MASK))
+               return -EINVAL;
+       return sys_mmap_pgoff(addr, len, prot, flags, fd, offset >> PAGE_SHIFT);
 }
 
 asmlinkage long