All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anilkumar Kolli <akolli@codeaurora.org>
To: Dan Carpenter <dan.carpenter@oracle.com>
Cc: ath11k@lists.infradead.org
Subject: Re: [bug report] ath11k: Fix pktlog lite rx events
Date: Tue, 14 Dec 2021 19:56:50 +0530	[thread overview]
Message-ID: <725a45b8c05ebd508df3bfc6b1097b03@codeaurora.org> (raw)
In-Reply-To: <20211130104159.GD5827@kili>

On 2021-11-30 16:12, Dan Carpenter wrote:
> Hello Anilkumar Kolli,
> 
> The patch ab18e3bc1c13: "ath11k: Fix pktlog lite rx events" from Sep
> 28, 2021, leads to the following Smatch static checker warning:
> 
> 	drivers/net/wireless/ath/ath11k/dp_rx.c:3105 
> ath11k_dp_rx_process_mon_status()
> 	error: uninitialized symbol 'rx_buf_sz'.
> 
> drivers/net/wireless/ath/ath11k/dp_rx.c
>     3043 int ath11k_dp_rx_process_mon_status(struct ath11k_base *ab, 
> int mac_id,
>     3044                                     struct napi_struct *napi,
> int budget)
>     3045 {
>     3046         struct ath11k *ar = ath11k_ab_to_ar(ab, mac_id);
>     3047         enum hal_rx_mon_status hal_status;
>     3048         struct sk_buff *skb;
>     3049         struct sk_buff_head skb_list;
>     3050         struct hal_rx_mon_ppdu_info ppdu_info;
>     3051         struct ath11k_peer *peer;
>     3052         struct ath11k_sta *arsta;
>     3053         int num_buffs_reaped = 0;
>     3054         u32 rx_buf_sz;
>                  ^^^^^^^^^^^^^
> 
>     3055         u16 log_type = 0;
>     3056
>     3057         __skb_queue_head_init(&skb_list);
>     3058
>     3059         num_buffs_reaped =
> ath11k_dp_rx_reap_mon_status_ring(ab, mac_id, &budget,
>     3060
> &skb_list);
>     3061         if (!num_buffs_reaped)
>     3062                 goto exit;
>     3063
>     3064         while ((skb = __skb_dequeue(&skb_list))) {
>     3065                 memset(&ppdu_info, 0, sizeof(ppdu_info));
>     3066                 ppdu_info.peer_id = HAL_INVALID_PEERID;
>     3067
>     3068                 if 
> (ath11k_debugfs_is_pktlog_lite_mode_enabled(ar)) {
>     3069                         log_type = ATH11K_PKTLOG_TYPE_LITE_RX;
>     3070                         rx_buf_sz = DP_RX_BUFFER_SIZE_LITE;
>     3071                 } else if
> (ath11k_debugfs_is_pktlog_rx_stats_enabled(ar)) {
>     3072                         log_type = 
> ATH11K_PKTLOG_TYPE_RX_STATBUF;
>     3073                         rx_buf_sz = DP_RX_BUFFER_SIZE;
>     3074                 }
> 
> No else statement.
> 
>     3075
>     3076                 if (log_type)
>     3077                         trace_ath11k_htt_rxdesc(ar,
> skb->data, log_type, rx_buf_sz);
>     3078
>     3079                 hal_status =
> ath11k_hal_rx_parse_mon_status(ab, &ppdu_info, skb);
>     3080
>     3081                 if (ppdu_info.peer_id == HAL_INVALID_PEERID ||
>     3082                     hal_status != HAL_RX_MON_STATUS_PPDU_DONE) 
> {
>     3083                         dev_kfree_skb_any(skb);
>     3084                         continue;
>     3085                 }
>     3086
>     3087                 rcu_read_lock();
>     3088                 spin_lock_bh(&ab->base_lock);
>     3089                 peer = ath11k_peer_find_by_id(ab, 
> ppdu_info.peer_id);
>     3090
>     3091                 if (!peer || !peer->sta) {
>     3092                         ath11k_dbg(ab, ATH11K_DBG_DATA,
>     3093                                    "failed to find the peer
> with peer_id %d\n",
>     3094                                    ppdu_info.peer_id);
>     3095                         spin_unlock_bh(&ab->base_lock);
>     3096                         rcu_read_unlock();
>     3097                         dev_kfree_skb_any(skb);
>     3098                         continue;
>     3099                 }
>     3100
>     3101                 arsta = (struct ath11k_sta 
> *)peer->sta->drv_priv;
>     3102                 ath11k_dp_rx_update_peer_stats(arsta, 
> &ppdu_info);
>     3103
>     3104                 if (ath11k_debugfs_is_pktlog_peer_valid(ar,
> peer->addr))
> --> 3105                         trace_ath11k_htt_rxdesc(ar,
> skb->data, log_type, rx_buf_sz);
> 
>            ^^^^^^^^^
> Warning here.
> 
>     3106
>     3107                 spin_unlock_bh(&ab->base_lock);
>     3108                 rcu_read_unlock();
>     3109
>     3110                 dev_kfree_skb_any(skb);
>     3111         }
>     3112 exit:
>     3113         return num_buffs_reaped;
>     3114 }
> 
> regards,
> dan carpenter

Hi Dan carpenter

Thanks for reporting issue. Could you please help in reproducing the 
issue,

I tried to reproduce the warnings using command, but could not
     make C=1 CHECK="smatch -p=kernel" -C. 
drivers/net/wireless/ath/ath11k/ modules

My PC has,

gcc --version
gcc (Ubuntu 10.3.0-1ubuntu1~20.04) 10.3.0

sparse --version
v0.6.3-rc1

smatch --version
v0.5.0-7764-g0951ed59

Build LOGS:
drivers/net/wireless/ath/ath11k/dp.c:213 ath11k_dp_srng_msi_setup() 
error: uninitialized symbol 'addr_lo'.
drivers/net/wireless/ath/ath11k/dp.c:214 ath11k_dp_srng_msi_setup() 
error: uninitialized symbol 'addr_hi'.
   CHECK   drivers/net/wireless/ath/ath11k/dp_tx.c
   CHECK   drivers/net/wireless/ath/ath11k/dp_rx.c
drivers/net/wireless/ath/ath11k/dp_rx.c:5372 
ath11k_dp_rx_full_mon_deliver_ppdu() error: uninitialized symbol 'ret'.

Thanks
Anil.

-- 
ath11k mailing list
ath11k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath11k

  reply	other threads:[~2021-12-14 14:26 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-30 10:42 [bug report] ath11k: Fix pktlog lite rx events Dan Carpenter
2021-12-14 14:26 ` Anilkumar Kolli [this message]
2021-12-21 14:52   ` Kalle Valo
2021-12-22  3:29     ` Anilkumar Kolli
2021-12-22  5:53       ` Kalle Valo

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=725a45b8c05ebd508df3bfc6b1097b03@codeaurora.org \
    --to=akolli@codeaurora.org \
    --cc=ath11k@lists.infradead.org \
    --cc=dan.carpenter@oracle.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.