* [PATCH 1/4] nommu - do_mmap patch for fs/binfmt_flat.c
@ 2005-05-07 8:12 Hyok S. Choi
0 siblings, 0 replies; only message in thread
From: Hyok S. Choi @ 2005-05-07 8:12 UTC (permalink / raw)
To: Linux-Kernel List, uClinux development list
fs/binfmt_flat.c do_mmap patch against 2.6.12-rc3-mm3 : do_mmap flag should
not to be 0 for correct operation.
Signed-off-by : Hyok S. Choi <hyok.choi@samsung.com>
Index: linux-2.6.12-rc3-mm3/fs/binfmt_flat.c
================================================================
--- linux-2.6.12-rc3-mm3/fs/binfmt_flat.c 2005-05-06
09:53:27.000000000 +0900
+++ linux-2.6.12-rc3-mm3-hsc0/fs/binfmt_flat.c 2005-05-06
12:05:11.000000000 +0900
@@ -292,7 +292,7 @@
kfree(buf);
out_free:
kfree(strm.workspace);
-out:
+
return retval;
}
@@ -505,7 +505,7 @@
/*
* calculate the extra space we need to map in
*/
- extra = max(bss_len + stack_len, relocs * sizeof(unsigned long));
+ extra = max(bss_len + stack_len, (unsigned long)relocs *
sizeof(unsigned long));
/*
* there are a couple of cases here, the separate code/data
@@ -520,7 +520,8 @@
DBG_FLT("BINFMT_FLAT: ROM mapping of file (we hope)\n");
down_write(¤t->mm->mmap_sem);
- textpos = do_mmap(bprm->file, 0, text_len,
PROT_READ|PROT_EXEC, 0, 0);
+ textpos = do_mmap(bprm->file, 0, text_len,
PROT_READ|PROT_EXEC,
+ MAP_SHARED | MAP_DENYWRITE | MAP_EXECUTABLE, 0);
up_write(¤t->mm->mmap_sem);
if (!textpos || textpos >= (unsigned long) -4096) {
if (!textpos)
@@ -532,7 +533,8 @@
down_write(¤t->mm->mmap_sem);
realdatastart = do_mmap(0, 0, data_len + extra +
MAX_SHARED_LIBS * sizeof(unsigned long),
- PROT_READ|PROT_WRITE|PROT_EXEC, 0, 0);
+ PROT_READ|PROT_WRITE|PROT_EXEC,
+ MAP_SHARED, 0);
up_write(¤t->mm->mmap_sem);
if (realdatastart == 0 || realdatastart >= (unsigned
long)-4096) {
@@ -574,7 +576,8 @@
down_write(¤t->mm->mmap_sem);
textpos = do_mmap(0, 0, text_len + data_len + extra +
MAX_SHARED_LIBS * sizeof(unsigned
long),
- PROT_READ | PROT_EXEC | PROT_WRITE, 0, 0);
+ PROT_READ | PROT_EXEC | PROT_WRITE,
+ MAP_SHARED, 0);
up_write(¤t->mm->mmap_sem);
if (!textpos || textpos >= (unsigned long) -4096) {
if (!textpos)
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2005-05-07 8:25 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-05-07 8:12 [PATCH 1/4] nommu - do_mmap patch for fs/binfmt_flat.c Hyok S. Choi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®