lkml.org 
[lkml]   [2004]   [Apr]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectErrors in load_elf_binary()?
File: fs/binfmt_elf.c

1.

load_elf_binary()

2002/02/05 torvalds | retval = kernel_read(bprm->file, elf_ex.e_phoff, (char *) elf_phdata, size);
2002/02/05 torvalds | if (retval < 0)
2002/02/05 torvalds | goto out_free_ph;
2003/06/29 alan |
2003/06/29 alan | files = current->files; /* Refcounted so ok */
2003/06/29 alan | if(unshare_files() < 0)
2003/06/29 alan | goto out_free_ph;
<<<< retval is not set >>>>
should be something like:
retval = unshare_files()
if (retval < 0)
goto ....;
2003/08/09 agruen | if (files == current->files) {
2003/08/09 agruen | put_files_struct(files);
2003/08/09 agruen | files = NULL;
2003/08/09 agruen | }

........

2.

load_elf_binary()

2002/02/05 torvalds | out_free_dentry:
2002/02/05 torvalds | allow_write_access(interpreter);
2002/02/05 torvalds | fput(interpreter);
<<<< interpreter can be NULL >>>>
e.g. we got oopses here when flush_old_exec()
returns error
should be something like:
if (interpreter)
fput(interpreter);
2002/02/05 torvalds | out_free_interp:

3.

load_elf_binary()

Why there is no steal_locks() call in exit path (after label
"out_free_fh")? Shouldn't were steal locks back when undoing our changes?

Kirill


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 14:02    [W:0.042 / U:1.572 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site