* [PATCH 11/19] arch_mmap_check() on mn10300
@ 2009-12-07 3:53 Al Viro
2009-12-07 3:53 ` Al Viro
0 siblings, 1 reply; 2+ messages in thread
From: Al Viro @ 2009-12-07 3:53 UTC (permalink / raw)
To: linux-arch; +Cc: torvalds, linux-kernel
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
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..db5c53d 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_check(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
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [PATCH 11/19] arch_mmap_check() on mn10300
2009-12-07 3:53 [PATCH 11/19] arch_mmap_check() on mn10300 Al Viro
@ 2009-12-07 3:53 ` Al Viro
0 siblings, 0 replies; 2+ messages in thread
From: Al Viro @ 2009-12-07 3:53 UTC (permalink / raw)
To: linux-arch; +Cc: torvalds, linux-kernel
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
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..db5c53d 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_check(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
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-12-07 3:53 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-12-07 3:53 [PATCH 11/19] arch_mmap_check() on mn10300 Al Viro
2009-12-07 3:53 ` Al Viro
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox