diff options
Diffstat (limited to 'fs/exec.c')
-rw-r--r-- | fs/exec.c | 7 |
1 files changed, 6 insertions, 1 deletions
@@ -49,6 +49,7 @@ | |||
49 | #include <linux/rmap.h> | 49 | #include <linux/rmap.h> |
50 | #include <linux/acct.h> | 50 | #include <linux/acct.h> |
51 | #include <linux/cn_proc.h> | 51 | #include <linux/cn_proc.h> |
52 | #include <linux/audit.h> | ||
52 | 53 | ||
53 | #include <asm/uaccess.h> | 54 | #include <asm/uaccess.h> |
54 | #include <asm/mmu_context.h> | 55 | #include <asm/mmu_context.h> |
@@ -865,7 +866,6 @@ int flush_old_exec(struct linux_binprm * bprm) | |||
865 | bprm->mm = NULL; /* We're using it now */ | 866 | bprm->mm = NULL; /* We're using it now */ |
866 | 867 | ||
867 | /* This is the point of no return */ | 868 | /* This is the point of no return */ |
868 | steal_locks(files); | ||
869 | put_files_struct(files); | 869 | put_files_struct(files); |
870 | 870 | ||
871 | current->sas_ss_sp = current->sas_ss_size = 0; | 871 | current->sas_ss_sp = current->sas_ss_size = 0; |
@@ -1085,6 +1085,11 @@ int search_binary_handler(struct linux_binprm *bprm,struct pt_regs *regs) | |||
1085 | /* kernel module loader fixup */ | 1085 | /* kernel module loader fixup */ |
1086 | /* so we don't try to load run modprobe in kernel space. */ | 1086 | /* so we don't try to load run modprobe in kernel space. */ |
1087 | set_fs(USER_DS); | 1087 | set_fs(USER_DS); |
1088 | |||
1089 | retval = audit_bprm(bprm); | ||
1090 | if (retval) | ||
1091 | return retval; | ||
1092 | |||
1088 | retval = -ENOENT; | 1093 | retval = -ENOENT; |
1089 | for (try=0; try<2; try++) { | 1094 | for (try=0; try<2; try++) { |
1090 | read_lock(&binfmt_lock); | 1095 | read_lock(&binfmt_lock); |