Re: [PATCH 2/2] ath11k: Handle errors if peer creation fails

Kalle Valo
2020-10-06T07:26:36Z

Alex Dewar <alex.dewar90@gmail.com> writes:

> ath11k_peer_create() is called without its return value being checked,
> meaning errors will be unhandled. Add missing check and, as the mutex is
> unconditionally unlocked on leaving this function, simplify the exit
> path.
>
> Addresses-Coverity-ID: 1497531 ("Code maintainability issues")
> Fixes: 701e48a43e15 ("ath11k: add packet log support for QCA6390")
> Signed-off-by: Alex Dewar <alex.dewar90@gmail.com>
> ---
> drivers/net/wireless/ath/ath11k/mac.c | 21 +++++++++------------
> 1 file changed, 9 insertions(+), 12 deletions(-)
>
> diff --git a/drivers/net/wireless/ath/ath11k/mac.c b/drivers/net/wireless/ath/ath11k/mac.c
> index 7f8dd47d2333..58db1b57b941 100644
> --- a/drivers/net/wireless/ath/ath11k/mac.c
> +++ b/drivers/net/wireless/ath/ath11k/mac.c
> @@ -5211,7 +5211,7 @@ ath11k_mac_op_assign_vif_chanctx(struct ieee80211_hw *hw,
> struct ath11k *ar = hw->priv;
> struct ath11k_base *ab = ar->ab;
> struct ath11k_vif *arvif = (void *)vif->drv_priv;
> - int ret;
> + int ret = 0;

I prefer not to initialise the ret variable.

> arvif->is_started = true;
>
> /* TODO: Setup ps and cts/rts protection */
>
> - mutex_unlock(&ar->conf_mutex);
> -
> - return 0;
> -
> -err:
> +unlock:
> mutex_unlock(&ar->conf_mutex);
>
> return ret;

So in the pending branch I changed this to:

ret = 0;

out:
mutex_unlock(&ar->conf_mutex);

return ret;

Please check.

--