[PATCH 3/4] ath10k: Add more debugging for receive errors.

Kalle Valo kvalo at qca.qualcomm.com
Tue Feb 4 13:51:35 EST 2014


greearb at candelatech.com writes:

> From: Ben Greear <greearb at candelatech.com>
>
> Signed-off-by: Ben Greear <greearb at candelatech.com>

[...]

> --- a/drivers/net/wireless/ath/ath10k/htt_rx.c
> +++ b/drivers/net/wireless/ath/ath10k/htt_rx.c
> @@ -937,6 +937,7 @@ static void ath10k_htt_rx_handler(struct ath10k_htt *htt,
>  			}
>  
>  			if (ath10k_htt_rx_has_decrypt_err(msdu_head)) {
> +				ath10k_warn("htt rx dropping due to decrypt-err\n");
>  				ath10k_htt_rx_free_msdu_chain(msdu_head);
>  				continue;
>  			}
> @@ -975,6 +976,13 @@ static void ath10k_htt_rx_handler(struct ath10k_htt *htt,
>  			info.skb     = msdu_head;
>  			info.fcs_err = ath10k_htt_rx_has_fcs_err(msdu_head);
>  			info.mic_err = ath10k_htt_rx_has_mic_err(msdu_head);
> +
> +			if (info.fcs_err)
> +				ath10k_warn("htt rx has FCS err\n");
> +
> +			if (info.mic_err)
> +				ath10k_warn("htt rx has MIC err\n");
> +

Do we really want to print warning messages to the user when these
happen? I would consider these as "business as usual" in 802.11 world,
not a problem in driver.

> --- a/drivers/net/wireless/ath/ath10k/txrx.c
> +++ b/drivers/net/wireless/ath/ath10k/txrx.c
> @@ -259,7 +259,7 @@ void ath10k_process_rx(struct ath10k *ar, struct htt_rx_info *info)
>  	status->freq = ch->center_freq;
>  
>  	ath10k_dbg(ATH10K_DBG_DATA,
> -		   "rx skb %p len %u %s%s%s%s%s %srate_idx %u vht_nss %u freq %u band %u\n",
> +		   "rx skb %p len %u %s%s%s%s%s %srate_idx %u vht_nss %u freq %u band %u flag: 0x%x fcs-err: %i\n",
>  		   info->skb,
>  		   info->skb->len,
>  		   status->flag == 0 ? "legacy" : "",
> @@ -271,7 +271,7 @@ void ath10k_process_rx(struct ath10k *ar, struct htt_rx_info *info)
>  		   status->rate_idx,
>  		   status->vht_nss,
>  		   status->freq,
> -		   status->band);
> +		   status->band, status->flag, info->fcs_err);

This makes sense, but please use the style used in ath10k debug messages:

"... band %u flag 0x%x fcs-err %i\n"

And as status->flag is u32, maybe 0x%08x makes it easier to read and
compare?

-- 
Kalle Valo



More information about the ath10k mailing list