[PATCH net-next] ath11k: fix uninitialized return in ath11k_spectral_process_data()

Kalle Valo kvalo at codeaurora.org
Mon Jun 22 10:51:16 EDT 2020


Dan Carpenter <dan.carpenter at oracle.com> writes:

> There is a success path where "ret" isn't initialized where we never
> have a ATH11K_SPECTRAL_TAG_SCAN_SEARCH and then ret isn't initialized.
>
> Fixes: 9d11b7bff950 ("ath11k: add support for spectral scan")
> Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>
> ---
>  drivers/net/wireless/ath/ath11k/spectral.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/net/wireless/ath/ath11k/spectral.c b/drivers/net/wireless/ath/ath11k/spectral.c
> index 1c5d65bb411f..bfbf905f7507 100644
> --- a/drivers/net/wireless/ath/ath11k/spectral.c
> +++ b/drivers/net/wireless/ath/ath11k/spectral.c
> @@ -677,7 +677,7 @@ static int ath11k_spectral_process_data(struct ath11k *ar,
>  	u32 data_len, i;
>  	u8 sign, tag;
>  	int tlv_len, sample_sz;
> -	int ret;
> +	int ret = 0;
>  	bool quit = false;

I try to avoid initialising ret variables so I would like find another
way. What about doing this (completely untested!) in the end of the
function:

        return 0;

err:
	kfree(fft_sample);
unlock:
	spin_unlock_bh(&ar->spectral.lock);
	return ret;

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



More information about the ath11k mailing list