[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130114165551.GJ23505@n2100.arm.linux.org.uk>
Date: Mon, 14 Jan 2013 16:55:51 +0000
From: Russell King - ARM Linux <linux@....linux.org.uk>
To: Stephen Warren <swarren@...dotorg.org>
Cc: Laxman Dewangan <ldewangan@...dia.com>,
"linux-tegra@...r.kernel.org" <linux-tegra@...r.kernel.org>,
"linux-arm-kernel@...ts.infradead.org"
<linux-arm-kernel@...ts.infradead.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH RFT 3/3] ARM: tegra: dts: seaboard: enable keyboard
On Mon, Jan 14, 2013 at 09:45:52AM -0700, Stephen Warren wrote:
> On 01/12/2013 03:34 AM, Laxman Dewangan wrote:
> ...
> > Which is the tree on which Prashant changes are applied. I can debug
> > from that tree.
>
> git://nv-tegra.nvidia.com/user/swarren/linux-2.6 test-ccf-rework-v4
>
> But as I said in some other email in response to Prashant, I'll go and
> find out why the clk driver is returning NULL.
Exactly - the rule is, the rest of the clk API should accept as valid
anything which clk_get() produces _for that implementation_ which
IS_ERR() is not equal to 1.
What that means is:
- if a platform's clk_get() never returns NULL, then the rest of the clk
API need not test for that value.
(If a NULL pointer is passed to one of the clk API functions, crashing
_is_ _okay_. Consider what memset(NULL, 0, 4096) would do from the
kernel - it doesn't test for a NULL pointer just because it can - it
crashes so you can debug why it was passed a NULL pointer.)
- if a platform's clk_get() does return NULL, then the rest of the clk
API is expected to deal with a NULL pointer in a way that does _not_
result in the system crashing.
Or, to put it another way:
clk = clk_get(...);
if (IS_ERR(clk))
return PTR_ERR(clk);
clk_foo(clk);
for all possible return values of clk_get() that an implementation
_actually_ _intentionally_ returns[*] should never cause an oops.
[*] - bugs excluded. No bugs were squashed in the creation of this email.
--
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