[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+55aFwSQqkA_yzvePe7p-aJkbVJc9od=wLvXvs9B=NcckFfoA@mail.gmail.com>
Date: Tue, 12 May 2015 13:31:58 -0700
From: Linus Torvalds <torvalds@...ux-foundation.org>
To: "Luis R. Rodriguez" <mcgrof@...not-panic.com>
Cc: Ming Lei <ming.lei@...onical.com>,
Rusty Russell <rusty@...tcorp.com.au>,
David Howells <dhowells@...hat.com>,
Seth Forshee <seth.forshee@...onical.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Paul Bolle <pebolle@...cali.nl>,
Linux Wireless List <linux-wireless@...r.kernel.org>,
"Luis R. Rodriguez" <mcgrof@...e.com>,
Kyle McMartin <kyle@...nel.org>
Subject: Re: [PATCH v2 1/5] firmware: fix __getname() missing failure check
On Tue, May 12, 2015 at 11:30 AM, Luis R. Rodriguez
<mcgrof@...not-panic.com> wrote:
> +
> + path = __getname();
> + if (unlikely(!path))
> + return PTR_ERR(path);
This makes no sense.
PTR_ERR() on NULL is an insane operation. It's a very non-intuitive
and misleading way of writing "0".
So not only is that "return 0;", that's not likely what you want _anyway_.
If you intended to return an error, you should just have done so, eg
if (unlikely(!path))
return -ENOMEM;
which actually does something sane, and is more readable.
PTR_ERR() is for when you get an error pointer, so a sequence like
if (IS_ERR(ptr))
return PTR_ERR(ptr);
is sensible (it checks whether the ptr has an error value in it, and
then returns the integer error value of the pointer).
But for a NULL pointer? No.
Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists