aboutsummaryrefslogtreecommitdiffstats
path: root/fs/exec.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/exec.c')
-rw-r--r--fs/exec.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/exec.c b/fs/exec.c
index b152029f18f6..a13883903ee9 100644
--- a/fs/exec.c
+++ b/fs/exec.c
@@ -735,6 +735,7 @@ static int exec_mmap(struct mm_struct *mm)
735 tsk->active_mm = mm; 735 tsk->active_mm = mm;
736 activate_mm(active_mm, mm); 736 activate_mm(active_mm, mm);
737 task_unlock(tsk); 737 task_unlock(tsk);
738 mm_update_next_owner(mm);
738 arch_pick_mmap_layout(mm); 739 arch_pick_mmap_layout(mm);
739 if (old_mm) { 740 if (old_mm) {
740 up_read(&old_mm->mmap_sem); 741 up_read(&old_mm->mmap_sem);
@@ -963,6 +964,8 @@ int flush_old_exec(struct linux_binprm * bprm)
963 if (retval) 964 if (retval)
964 goto out; 965 goto out;
965 966
967 set_mm_exe_file(bprm->mm, bprm->file);
968
966 /* 969 /*
967 * Release all of the old mmap stuff 970 * Release all of the old mmap stuff
968 */ 971 */
@@ -1268,7 +1271,6 @@ int do_execve(char * filename,
1268{ 1271{
1269 struct linux_binprm *bprm; 1272 struct linux_binprm *bprm;
1270 struct file *file; 1273 struct file *file;
1271 unsigned long env_p;
1272 struct files_struct *displaced; 1274 struct files_struct *displaced;
1273 int retval; 1275 int retval;
1274 1276
@@ -1321,11 +1323,9 @@ int do_execve(char * filename,
1321 if (retval < 0) 1323 if (retval < 0)
1322 goto out; 1324 goto out;
1323 1325
1324 env_p = bprm->p;
1325 retval = copy_strings(bprm->argc, argv, bprm); 1326 retval = copy_strings(bprm->argc, argv, bprm);
1326 if (retval < 0) 1327 if (retval < 0)
1327 goto out; 1328 goto out;
1328 bprm->argv_len = env_p - bprm->p;
1329 1329
1330 retval = search_binary_handler(bprm,regs); 1330 retval = search_binary_handler(bprm,regs);
1331 if (retval >= 0) { 1331 if (retval >= 0) {