qcacmn: Fix issues from monitor path

a. Fix memleak issue due to RX_HDR not received for a MPDU
b. Compute appropriate packet offset for non-decapped packets
c. Add correct DMA_LEN while adding a frag to SKB.
d. Add debug stats

Change-Id: Ie946f79df94df05789220b97c159c60d608bf1b2
CRs-Fixed: 3213698
This commit is contained in:
Amir Patel
2022-06-10 19:13:12 +05:30
committed by Madan Koyyalamudi
parent 823d493a71
commit debe4c7ecf
7 changed files with 192 additions and 84 deletions

View File

@@ -392,6 +392,13 @@ enum cdp_mon_phyrx_abort_reason_code {
* ring ppdu id
* @rx_undecoded_count: Received undecoded frame count
* @rx_undecoded_error: Rx undecoded errors
* @rx_hdr_not_received: Rx HDR not received for MPDU
* @parent_buf_alloc: Numder of parent nbuf allocated for MPDU
* @parent_buf_free: Number of parent nbuf freed
* @pkt_buf_count: Number of packet buffers received
* @mpdus_to_stack: Number of MPDUs delivered to stack
* @status_buf_count: Number of status buffer received
* @empty_desc_ppdu: Number of empty desc received
*/
struct cdp_pdev_mon_stats {
#ifndef REMOVE_MON_DBG_STATS
@@ -428,6 +435,13 @@ struct cdp_pdev_mon_stats {
uint32_t rx_undecoded_count;
uint32_t rx_undecoded_error[CDP_PHYRX_ERR_MAX];
#endif
uint32_t rx_hdr_not_received;
uint32_t parent_buf_alloc;
uint32_t parent_buf_free;
uint32_t pkt_buf_count;
uint32_t mpdus_buf_to_stack;
uint32_t status_buf_count;
uint32_t empty_desc_ppdu;
};
#ifdef QCA_SUPPORT_LITE_MONITOR