Re: [PATCH] ath10k: fix the status check and wrong return

From: Kalle Valo
Date: Mon Aug 17 2020 - 10:27:48 EST


Tang Bin <tangbin@xxxxxxxxxxxxxxxxxxxx> writes:

> In the function ath10k_ahb_clock_init(), devm_clk_get() doesn't
> return NULL. Thus use IS_ERR() and PTR_ERR() to validate
> the returned value instead of IS_ERR_OR_NULL().

Why? What's the benefit of this patch? Or what harm does
IS_ERR_OR_NULL() create?

> Signed-off-by: Zhang Shengju <zhangshengju@xxxxxxxxxxxxxxxxxxxx>
> Signed-off-by: Tang Bin <tangbin@xxxxxxxxxxxxxxxxxxxx>
> ---
> drivers/net/wireless/ath/ath10k/ahb.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath10k/ahb.c b/drivers/net/wireless/ath/ath10k/ahb.c
> index ed87bc00f..ea669af6a 100644
> --- a/drivers/net/wireless/ath/ath10k/ahb.c
> +++ b/drivers/net/wireless/ath/ath10k/ahb.c
> @@ -87,24 +87,24 @@ static int ath10k_ahb_clock_init(struct ath10k *ar)
> dev = &ar_ahb->pdev->dev;
>
> ar_ahb->cmd_clk = devm_clk_get(dev, "wifi_wcss_cmd");
> - if (IS_ERR_OR_NULL(ar_ahb->cmd_clk)) {
> + if (IS_ERR(ar_ahb->cmd_clk)) {
> ath10k_err(ar, "failed to get cmd clk: %ld\n",
> PTR_ERR(ar_ahb->cmd_clk));
> - return ar_ahb->cmd_clk ? PTR_ERR(ar_ahb->cmd_clk) : -ENODEV;
> + return PTR_ERR(ar_ahb->cmd_clk);
> }

devm_clk_get() can return NULL if CONFIG_HAVE_CLK is disabled:

static inline struct clk *devm_clk_get(struct device *dev, const char *id)
{
return NULL;
}

--
https://wireless.wiki.kernel.org/en/developers/documentation/submittingpatches