qcacmn: add drop count for OOR eapol frames

Add drop statistics for duplicate EAPOL frames received
in the REO exception ring as OOR frames. This will help
understand if EAPOL frames are getting dropped which could
cause connection issues.

Change-Id: Ib9d5a3c04ce6638c65166f02261af5c526cc47eb
CRs-Fixed: 2814633
This commit is contained in:
Manikanta Pubbisetty 2020-12-07 09:36:30 +05:30 • committed by snandini
commit e11531dbba
3 changed files with 10 additions and 1 deletions

View file

@ -495,8 +495,10 @@ dp_rx_oor_handle(struct dp_soc *soc,
* duplicated EAP response.
*/
if (mpdu_desc_info->mpdu_flags & HAL_MPDU_F_RETRY_BIT &&
peer->rx_tid[tid].ba_status == DP_RX_BA_ACTIVE)
peer->rx_tid[tid].ba_status == DP_RX_BA_ACTIVE) {
frame_mask &= ~FRAME_MASK_IPV4_EAPOL;
DP_STATS_INC(soc, rx.err.reo_err_oor_eapol_drop, 1);
}
if (dp_rx_deliver_special_frame(soc, peer, nbuf, frame_mask,
rx_tlv_hdr)) {

View file

@ -6028,6 +6028,8 @@ void dp_txrx_path_stats(struct dp_soc *soc)
pdev->soc->stats.rx.err.reo_err_oor_to_stack);
DP_PRINT_STATS("REO err oor msdu drop: %u",
pdev->soc->stats.rx.err.reo_err_oor_drop);
DP_PRINT_STATS("REO err oor eapol drop: %u",
pdev->soc->stats.rx.err.reo_err_oor_eapol_drop);
DP_PRINT_STATS("Rx err msdu rejected: %d",
soc->stats.rx.err.rejected);
DP_PRINT_STATS("Rx raw frame dropped: %d",
@ -6613,6 +6615,9 @@ dp_print_soc_rx_stats(struct dp_soc *soc)
DP_PRINT_STATS("REO err oor msdu drop: %d",
soc->stats.rx.err.reo_err_oor_drop);
DP_PRINT_STATS("REO err oor eapol drop: %d",
soc->stats.rx.err.reo_err_oor_eapol_drop);
DP_PRINT_STATS("Rx err msdu rejected: %d",
soc->stats.rx.err.rejected);

View file

@ -981,6 +981,8 @@ struct dp_soc_stats {
uint32_t nbuf_sanity_fail;
/* Duplicate link desc refilled */
uint32_t dup_refill_link_desc;
/* REO OOR eapol drop count */
uint32_t reo_err_oor_eapol_drop;
} err;
/* packet count per core - per ring */