diff options
| author | David S. Miller <davem@picasso.davemloft.net> | 2005-03-05 04:48:01 -0800 |
|---|---|---|
| committer | David S. Miller <davem@picasso.davemloft.net> | 2005-03-05 04:48:01 -0800 |
| commit | aa02c666ed857ef288db07cfa146d0da867645a5 (patch) | |
| tree | 26f1dfff2c3756d9090a048834140fe3855b4f5e /fs/exec.c | |
| parent | 9ebe3d6ea6848ed70c224ca33cd581a5ea1772be (diff) | |
| parent | 58a96a605ee4e5d573bec35c73bb6d015171cc16 (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.c | 8 |
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; } |
