diff --git a/dp/inc/cdp_txrx_cmn.h b/dp/inc/cdp_txrx_cmn.h index 13ef87c78e..3235b8044e 100644 --- a/dp/inc/cdp_txrx_cmn.h +++ b/dp/inc/cdp_txrx_cmn.h @@ -49,8 +49,11 @@ extern bool is_dp_verbose_debug_enabled; #ifdef DP_PRINT_NO_CONSOLE #define dp_err_log(params...) \ __QDF_TRACE_FL(QDF_TRACE_LEVEL_INFO_HIGH, QDF_MODULE_ID_DP, ## params) +#define dp_info_rl(params...) \ + __QDF_TRACE_RL(QDF_TRACE_LEVEL_INFO_HIGH, QDF_MODULE_ID_DP, ## params) #else #define dp_err_log(params...) QDF_TRACE_ERROR(QDF_MODULE_ID_DP, params) +#define dp_info_rl(params...) QDF_TRACE_INFO_RL(QDF_MODULE_ID_DP, params) #endif /* DP_PRINT_NO_CONSOLE */ #ifdef ENABLE_VERBOSE_DEBUG @@ -92,7 +95,6 @@ enum verbose_debug_module { #define dp_alert_rl(params...) QDF_TRACE_FATAL_RL(QDF_MODULE_ID_DP, params) #define dp_err_rl(params...) QDF_TRACE_ERROR_RL(QDF_MODULE_ID_DP, params) #define dp_warn_rl(params...) QDF_TRACE_WARN_RL(QDF_MODULE_ID_DP, params) -#define dp_info_rl(params...) QDF_TRACE_INFO_RL(QDF_MODULE_ID_DP, params) #define dp_debug_rl(params...) QDF_TRACE_DEBUG_RL(QDF_MODULE_ID_DP, params) /** diff --git a/dp/wifi3.0/dp_rx_defrag.c b/dp/wifi3.0/dp_rx_defrag.c index dce195ccd6..6538999ebf 100644 --- a/dp/wifi3.0/dp_rx_defrag.c +++ b/dp/wifi3.0/dp_rx_defrag.c @@ -1437,9 +1437,9 @@ dp_rx_defrag_store_fragment(struct dp_soc *soc, * however, that might happen while we are in the monitor mode. * We don't need to handle that here */ - QDF_TRACE(QDF_MODULE_ID_TXRX, QDF_TRACE_LEVEL_ERROR, - "Unknown peer, dropping the fragment"); - + dp_info_rl("Unknown peer with peer_id %d, dropping fragment", + peer_id); + DP_STATS_INC(soc, rx.rx_frag_err_no_peer, 1); goto discard_frag; } @@ -1728,11 +1728,10 @@ uint32_t dp_rx_frag_handle(struct dp_soc *soc, hal_ring_desc_t ring_desc, rx_bufs_used++; if (!QDF_IS_STATUS_SUCCESS(status)) - QDF_TRACE(QDF_MODULE_ID_TXRX, QDF_TRACE_LEVEL_ERROR, - "Rx Defrag err seq#:0x%x msdu_count:%d flags:%d", - mpdu_desc_info->mpdu_seq, - mpdu_desc_info->msdu_count, - mpdu_desc_info->mpdu_flags); + dp_info_rl("Rx Defrag err seq#:0x%x msdu_count:%d flags:%d", + mpdu_desc_info->mpdu_seq, + mpdu_desc_info->msdu_count, + mpdu_desc_info->mpdu_flags); return rx_bufs_used; } diff --git a/dp/wifi3.0/dp_types.h b/dp/wifi3.0/dp_types.h index 0d2318b8db..7a89cea5d9 100644 --- a/dp/wifi3.0/dp_types.h +++ b/dp/wifi3.0/dp_types.h @@ -725,6 +725,8 @@ struct dp_soc_stats { uint32_t rx_frag_err; /* Fragments dropped due to len errors in skb */ uint32_t rx_frag_err_len_error; + /* Fragments dropped due to no peer found */ + uint32_t rx_frag_err_no_peer; /* No of reinjected packets */ uint32_t reo_reinject; /* Reap loop packet limit hit */