summaryrefslogtreecommitdiff
path: root/fs/exec.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@picasso.davemloft.net>2005-03-05 04:48:01 -0800
committerDavid S. Miller <davem@picasso.davemloft.net>2005-03-05 04:48:01 -0800
commitaa02c666ed857ef288db07cfa146d0da867645a5 (patch)
tree26f1dfff2c3756d9090a048834140fe3855b4f5e /fs/exec.c
parent9ebe3d6ea6848ed70c224ca33cd581a5ea1772be (diff)
parent58a96a605ee4e5d573bec35c73bb6d015171cc16 (diff)
Merge davem@nuts:/disk1/BK/set_pte-2.6
into picasso.davemloft.net:/home/davem/src/BK/set_pte-2.6
Diffstat (limited to 'fs/exec.c')
-rw-r--r--fs/exec.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/fs/exec.c b/fs/exec.c
index 1a065b2f8444..c0c52eb8e4c7 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -400,7 +400,8 @@ int setup_arg_pages(struct linux_binprm *bprm,
while (i < MAX_ARG_PAGES)
bprm->page[i++] = NULL;
#else
- stack_base = stack_top - MAX_ARG_PAGES * PAGE_SIZE;
+ stack_base = arch_align_stack(stack_top - MAX_ARG_PAGES*PAGE_SIZE);
+ stack_base = PAGE_ALIGN(stack_base);
bprm->p += stack_base;
mm->arg_start = bprm->p;
arg_size = stack_top - (PAGE_MASK & (unsigned long) mm->arg_start);
@@ -877,6 +878,7 @@ int flush_old_exec(struct linux_binprm * bprm)
tcomm[i] = '\0';
set_task_comm(current, tcomm);
+ current->flags &= ~PF_RANDOMIZE;
flush_thread();
if (bprm->e_uid != current->euid || bprm->e_gid != current->egid ||
@@ -1191,8 +1193,8 @@ int do_execve(char * filename,
/* execve success */
security_bprm_free(bprm);
- acct_update_integrals();
- update_mem_hiwater();
+ acct_update_integrals(current);
+ update_mem_hiwater(current);
kfree(bprm);
return retval;
}