From 3797ba0b62debb71af4606910acacc9896a9ae3b Mon Sep 17 00:00:00 2001 From: Ralf Baechle Date: Sun, 25 Jun 2000 01:20:01 +0000 Subject: Merge with Linux 2.4.0-test2. --- fs/binfmt_elf.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'fs/binfmt_elf.c') 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); -- cgit v1.2.3