2009-12-05 20:17:10

by Al Viro

[permalink] [raw]
Subject: [RFC][PATCH 11/18] arch_mmap_check() on mn10300


Signed-off-by: Al Viro <[email protected]>
---
arch/mn10300/include/asm/mman.h | 5 +++++
arch/mn10300/kernel/sys_mn10300.c | 5 -----
2 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/arch/mn10300/include/asm/mman.h b/arch/mn10300/include/asm/mman.h
index 8eebf89..712f7b0 100644
--- a/arch/mn10300/include/asm/mman.h
+++ b/arch/mn10300/include/asm/mman.h
@@ -1 +1,6 @@
#include <asm-generic/mman.h>
+
+#define MIN_MAP_ADDR PAGE_SIZE /* minimum fixed mmap address */
+
+#define arch_mmap_chech(addr, len, flags) \
+ (((flags) & MAP_FIXED && (addr) < MIN_MAP_ADDR) ? -EINVAL : 0)
diff --git a/arch/mn10300/kernel/sys_mn10300.c b/arch/mn10300/kernel/sys_mn10300.c
index 8ca5af0..ec4100d 100644
--- a/arch/mn10300/kernel/sys_mn10300.c
+++ b/arch/mn10300/kernel/sys_mn10300.c
@@ -23,8 +23,6 @@

#include <asm/uaccess.h>

-#define MIN_MAP_ADDR PAGE_SIZE /* minimum fixed mmap address */
-
/*
* memory mapping syscall
*/
@@ -37,9 +35,6 @@ asmlinkage long sys_mmap2(unsigned long addr, unsigned long len,

flags &= ~(MAP_EXECUTABLE | MAP_DENYWRITE);

- if (flags & MAP_FIXED && addr < MIN_MAP_ADDR)
- goto out;
-
error = -EBADF;
if (!(flags & MAP_ANONYMOUS)) {
file = fget(fd);
--
1.5.6.5


2009-12-06 17:38:20

by David Howells

[permalink] [raw]
Subject: Re: [RFC][PATCH 11/18] arch_mmap_check() on mn10300

Al Viro <[email protected]> wrote:

> +#define arch_mmap_chech(addr, len, flags) \
> + (((flags) & MAP_FIXED && (addr) < MIN_MAP_ADDR) ? -EINVAL : 0)

I believe that should be arch_mmap_check().

David

2009-12-06 17:41:34

by Al Viro

[permalink] [raw]
Subject: Re: [RFC][PATCH 11/18] arch_mmap_check() on mn10300

On Sun, Dec 06, 2009 at 05:38:12PM +0000, David Howells wrote:
> Al Viro <[email protected]> wrote:
>
> > +#define arch_mmap_chech(addr, len, flags) \
> > + (((flags) & MAP_FIXED && (addr) < MIN_MAP_ADDR) ? -EINVAL : 0)
>
> I believe that should be arch_mmap_check().

D'oh. Thanks for spotting (and that, BTW, is a nice demonstration
of the reasons why "arch hooks with default" thing is bad). Fixed in
my tree, will go in the next repost.