diff options
author | Ralf Baechle <ralf@linux-mips.org> | 2000-06-25 01:20:01 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2000-06-25 01:20:01 +0000 |
commit | 3797ba0b62debb71af4606910acacc9896a9ae3b (patch) | |
tree | 414eea76253c7871bfdf3bd9d1817771eb40917c /fs/binfmt_elf.c | |
parent | 2b6c0c580795a4404f72d2a794214dd9e080709d (diff) |
Merge with Linux 2.4.0-test2.
Diffstat (limited to 'fs/binfmt_elf.c')
-rw-r--r-- | fs/binfmt_elf.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/fs/binfmt_elf.c b/fs/binfmt_elf.c index cd6a76271..9fd867d0e 100644 --- a/fs/binfmt_elf.c +++ b/fs/binfmt_elf.c @@ -674,8 +674,9 @@ static int load_elf_binary(struct linux_binprm * bprm, struct pt_regs * regs) interpreter, &interp_load_addr); - allow_write_access(interpreter); + lock_kernel(); fput(interpreter); + unlock_kernel(); kfree(elf_interpreter); if (elf_entry == ~0UL) { @@ -754,7 +755,7 @@ static int load_elf_binary(struct linux_binprm * bprm, struct pt_regs * regs) #endif start_thread(regs, elf_entry, bprm->p); - if (current->ptrace&PT_PTRACED) + if (current->ptrace & PT_PTRACED) send_sig(SIGTRAP, current, 0); retval = 0; out: @@ -762,8 +763,9 @@ out: /* error cleanup */ out_free_dentry: - allow_write_access(interpreter); + lock_kernel(); fput(interpreter); + unlock_kernel(); out_free_interp: if (elf_interpreter) kfree(elf_interpreter); |