[PATCH] ARM: SAMSUNG: Should check for IS_ERR(clk) instead of NULL

Sylwester Nawrocki s.nawrocki at samsung.com
Fri Apr 20 06:25:01 EDT 2012


On 04/19/2012 11:03 AM, Russell King - ARM Linux wrote:
> On Thu, Apr 19, 2012 at 10:25:36AM +0200, Sylwester Nawrocki wrote:
>> On 04/19/2012 02:12 AM, Kukjin Kim wrote:
>>>> --- a/arch/arm/plat-samsung/include/plat/watchdog-reset.h
>>>> +++ b/arch/arm/plat-samsung/include/plat/watchdog-reset.h
>>>> @@ -25,7 +25,7 @@ static inline void arch_wdt_reset(void)
>>>>
>>>>   	__raw_writel(0, S3C2410_WTCON);	  /* disable watchdog, to be safe  */
>>>>
>>>> -	if (s3c2410_wdtclk)
>>>> +	if (!IS_ERR(s3c2410_wdtclk))
>>>
>>> Yeah, right. BTW don't we need to check NULL here?
>>
>> It might make sense to check for NULL as well, but only if it happens
>> that a clock entry is ever added to clkdev with null struct clk_lookup:clk
>> member.
> 
> Not quite the correct answer.  The correct answer is:
> 
> Drivers have no business interpreting anything but IS_ERR() values from
> clk_get() as errors.  Everything else they _MUST_ assume is valid for
> the rest of the clk API.
> 
> The clue: struct clk is an opaque cookie as far as drivers are concerned.
> The only interpretation drivers are allowed to make is that IS_ERR()
> values indicate an error.  Everything else is potentially valid.

Thanks for the clarification. I stand corrected.



More information about the linux-arm-kernel mailing list