diff options
| author | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-03-04 21:30:44 -0800 |
|---|---|---|
| committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2005-03-04 21:30:44 -0800 |
| commit | 58a96a605ee4e5d573bec35c73bb6d015171cc16 (patch) | |
| tree | 52d49ddf2e58f38f457a1e50ffc7254cd8683783 /fs/exec.c | |
| parent | 55d411d0e475235b36343c10216657d96e9da156 (diff) | |
| parent | 05e7304908ec281ce4ef29d1db58ec8d6fd73563 (diff) | |
Merge bk://gkernel.bkbits.net/libata-2.6
into ppc970.osdl.org:/home/torvalds/v2.6/linux
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 ee58e91a9d7f..393605cdc101 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; } |
