* [PATCH] binfmt_flat mmap flag fix
@ 2005-06-03 19:22 Yoshinori Sato
0 siblings, 0 replies; only message in thread
From: Yoshinori Sato @ 2005-06-03 19:22 UTC (permalink / raw)
To: Andrew Morton; +Cc: linux-kernel
Because flag of mmap is not handed really, do not work normally.
Signed-off-by: Yoshinori Sato <ysato@users.sourceforge.jp>
--- linux-2.6.12-rc5/fs/binfmt_flat.c 2005-05-25 12:31:20.000000000 +0900
+++ linux-2.6.12-rc5-ysato/fs/binfmt_flat.c 2005-06-04 03:53:00.000000000 +0900
@@ -520,7 +520,7 @@
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, 0);
up_write(¤t->mm->mmap_sem);
if (!textpos || textpos >= (unsigned long) -4096) {
if (!textpos)
@@ -532,7 +532,7 @@
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_PRIVATE, 0);
up_write(¤t->mm->mmap_sem);
if (realdatastart == 0 || realdatastart >= (unsigned long)-4096) {
@@ -574,7 +574,7 @@
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_PRIVATE, 0);
up_write(¤t->mm->mmap_sem);
if (!textpos || textpos >= (unsigned long) -4096) {
if (!textpos)
--
Yoshinori Sato at CodeFest Japan 2005
<ysato@users.sourceforge.jp>
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2005-06-03 19:22 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-06-03 19:22 [PATCH] binfmt_flat mmap flag fix Yoshinori Sato
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox