Re: [PATCH] fs: uselib - Set error on do_filp_open failure only

From: Jesper Juhl
Date: Sat Apr 21 2012 - 18:00:34 EST


On Sun, 22 Apr 2012, Sasikanth V wrote:

> At present "error" is set irrespective of do_filp_open failed or not.
> Setting error to PTR_ERR(file) on do_filp_open failure only.
>
> Signed-off-by: Sasikanth V <sasikanth.v19@xxxxxxxxx>
> ---
> fs/exec.c | 5 +++--
> 1 files changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/fs/exec.c b/fs/exec.c
> index b1fd202..cb43367 100644
> --- a/fs/exec.c
> +++ b/fs/exec.c
> @@ -129,9 +129,10 @@ SYSCALL_DEFINE1(uselib, const char __user *, library)
>
> file = do_filp_open(AT_FDCWD, tmp, &uselib_flags, LOOKUP_FOLLOW);
> putname(tmp);
> - error = PTR_ERR(file);
> - if (IS_ERR(file))
> + if (IS_ERR(file)) {
> + error = PTR_ERR(file);
> goto out;
> + }
> error = -EINVAL;
> if (!S_ISREG(file->f_path.dentry->d_inode->i_mode))
>


Ok, maybe I'm just stupid, but I really don't see the point of this patch.

With the original code, if "IS_ERR(file)" is true we'll "goto out" with
'error' set to 'PTR_ERR(file)' and if it is false we'll set 'error =
-EINVAL' and continue on...

With your new version we will, as I read the code, "goto out" with "error
= PTR_ERR(file)" if "IS_ERR(file)" is true and if it is false we'll set
'error = -EINVAL' and continue.

As I see it, there's no difference, except that your new version adds one
extra line to the source file.

Am I missing something (as in "being completely braindead") or??


--
Jesper Juhl <jj@xxxxxxxxxxxxx> http://www.chaosbits.net/
Don't top-post http://www.catb.org/jargon/html/T/top-post.html
Plain text mails only, please.

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