qcacmn: fix srng lock hold long time due to logging

when lot of fragment frame with invalid peer_id indicated to
host through reo exception ring, excessive logging cause srng
lock hold long time.
  degrade log level as a WAR to avoid excessive logging.

Change-Id: Iffb18ad723d1ac5955868cc8ec99bb0198785ee5
CRs-Fixed: 2584610
此提交包含在:
Jinwei Chen
2019-12-12 19:19:02 +08:00
提交者 nshrivas
父節點 1b9b61e7cd
當前提交 5bd952ce05
共有 3 個檔案被更改,包括 12 行新增9 行删除

查看文件

@@ -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;
}

查看文件

@@ -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 */