Oleg Drokin, missing parts from the patch posted at http://marc.theaimsgroup.com/?l=linux-kernel&m=105103934631609&w=2 already in 2.6 diff -urN 27p2/fs/binfmt_elf.c 27p2.pac/fs/binfmt_elf.c --- 27p2/fs/binfmt_elf.c 2004-04-14 16:05:40.000000000 +0300 +++ 27p2.pac/fs/binfmt_elf.c 2004-05-09 23:58:10.000000000 +0300 @@ -375,7 +375,6 @@ unsigned long text_data, elf_entry = ~0UL; char * addr; loff_t offset; - int retval; current->mm->end_code = interp_ex->a_text; text_data = interp_ex->a_text + interp_ex->a_data; @@ -397,11 +396,9 @@ } do_brk(0, text_data); - retval = -ENOEXEC; if (!interpreter->f_op || !interpreter->f_op->read) goto out; - retval = interpreter->f_op->read(interpreter, addr, text_data, &offset); - if (retval < 0) + if (interpreter->f_op->read(interpreter, addr, text_data, &offset) < 0) goto out; flush_icache_range((unsigned long)addr, (unsigned long)addr + text_data);