On Wednesday 04 May 2016 20:17:51 Masahiro Yamada wrote:
> Currently, reset_control_put() just returns for error pointer,
> but not for NULL pointer.  This is not reasonable.
> 
> Passing NULL pointer should be allowed as well to make failure path
> handling easier.
> 
> Signed-off-by: Masahiro Yamada <[email protected]>
> ---
> 
>  drivers/reset/core.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/reset/core.c b/drivers/reset/core.c
> index 181b05d..7bb16d1 100644
> --- a/drivers/reset/core.c
> +++ b/drivers/reset/core.c
> @@ -288,7 +288,7 @@ EXPORT_SYMBOL_GPL(reset_control_get);
>  
>  void reset_control_put(struct reset_control *rstc)
>  {
> -       if (IS_ERR(rstc))
> +       if (IS_ERR_OR_NULL(rstc))
>                 return;
>  
>         module_put(rstc->rcdev->owner);

Using IS_ERR_OR_NULL() normally indicates that there is something
wrong with the API, or with the caller.

What exactly is the idea behind treating an error pointer as a valid
input to reset_control_put() here? Maybe it should just test for
NULL?

        Arnd

Reply via email to