From b60deaf55f9e5ef573cc03685b0d99b215dd776d Mon Sep 17 00:00:00 2001 From: Bapiraju Alla Date: Tue, 3 Nov 2020 12:56:47 +0530 Subject: [PATCH] qcacld-3.0: Rate limit the logs in SAP data Tx path Currently, the logs in SAP data Tx path are not rate limited. If there are any error scenarios in throughput tests, this may endup in continuous logging of the error messages. To avoid this rate limit the error logs in SAP data Tx path. Change-Id: I062b52c90e1e7ed85e74cc774f7817159f98eee6 CRs-Fixed: 2811093 --- core/hdd/src/wlan_hdd_softap_tx_rx.c | 49 ++++++++++++++-------------- 1 file changed, 25 insertions(+), 24 deletions(-) diff --git a/core/hdd/src/wlan_hdd_softap_tx_rx.c b/core/hdd/src/wlan_hdd_softap_tx_rx.c index ecc4656b5814..28c3be00fe42 100644 --- a/core/hdd/src/wlan_hdd_softap_tx_rx.c +++ b/core/hdd/src/wlan_hdd_softap_tx_rx.c @@ -547,7 +547,8 @@ static void __hdd_softap_hard_start_xmit(struct sk_buff *skb, */ if (cds_is_driver_recovering() || cds_is_driver_in_bad_state() || cds_is_load_or_unload_in_progress()) { - QDF_TRACE(QDF_MODULE_ID_HDD_SAP_DATA, QDF_TRACE_LEVEL_INFO_HIGH, + QDF_TRACE_DEBUG_RL( + QDF_MODULE_ID_HDD_SAP_DATA, "%s: Recovery/(Un)load in Progress. Ignore!!!", __func__); goto drop_pkt; @@ -565,10 +566,10 @@ static void __hdd_softap_hard_start_xmit(struct sk_buff *skb, goto drop_pkt; if (ap_ctx->hostapd_state.bss_state != BSS_START) { - QDF_TRACE(QDF_MODULE_ID_HDD_SAP_DATA, QDF_TRACE_LEVEL_INFO_HIGH, - "%s: SAP is not in START state (%d). Ignore!!!", - __func__, - ap_ctx->hostapd_state.bss_state); + QDF_TRACE_DEBUG_RL( + QDF_MODULE_ID_HDD_SAP_DATA, + "%s: SAP is not in START state (%d). Ignore!!!", + __func__, ap_ctx->hostapd_state.bss_state); goto drop_pkt; } @@ -576,7 +577,8 @@ static void __hdd_softap_hard_start_xmit(struct sk_buff *skb, * If a transmit function is not registered, drop packet */ if (!adapter->tx_fn) { - QDF_TRACE(QDF_MODULE_ID_HDD_SAP_DATA, QDF_TRACE_LEVEL_INFO_HIGH, + QDF_TRACE_DEBUG_RL( + QDF_MODULE_ID_HDD_SAP_DATA, "%s: TX function not registered by the data path", __func__); goto drop_pkt; @@ -598,15 +600,15 @@ static void __hdd_softap_hard_start_xmit(struct sk_buff *skb, if (!QDF_NBUF_CB_GET_IS_BCAST(skb) && !QDF_NBUF_CB_GET_IS_MCAST(skb)) { if (!sta_info) { - QDF_TRACE(QDF_MODULE_ID_HDD_SAP_DATA, - QDF_TRACE_LEVEL_INFO_HIGH, - "%s: Failed to find right station", __func__); + QDF_TRACE_DEBUG_RL(QDF_MODULE_ID_HDD_SAP_DATA, + "%s: Failed to find right station", + __func__); goto drop_pkt; } if (sta_info->is_deauth_in_progress) { - QDF_TRACE(QDF_MODULE_ID_HDD_SAP_DATA, - QDF_TRACE_LEVEL_INFO_HIGH, + QDF_TRACE_DEBUG_RL( + QDF_MODULE_ID_HDD_SAP_DATA, "%s: STA " QDF_MAC_ADDR_FMT "deauth in progress", __func__, QDF_MAC_ADDR_REF(sta_info->sta_mac.bytes)); @@ -615,16 +617,16 @@ static void __hdd_softap_hard_start_xmit(struct sk_buff *skb, if (sta_info->peer_state != OL_TXRX_PEER_STATE_CONN && sta_info->peer_state != OL_TXRX_PEER_STATE_AUTH) { - QDF_TRACE(QDF_MODULE_ID_HDD_SAP_DATA, - QDF_TRACE_LEVEL_INFO_HIGH, - "%s: Station not connected yet", __func__); + QDF_TRACE_DEBUG_RL( + QDF_MODULE_ID_HDD_SAP_DATA, + "%s: Station not connected yet", __func__); goto drop_pkt; } if (sta_info->peer_state == OL_TXRX_PEER_STATE_CONN) { if (ntohs(skb->protocol) != HDD_ETHERTYPE_802_1_X) { - QDF_TRACE(QDF_MODULE_ID_HDD_SAP_DATA, - QDF_TRACE_LEVEL_INFO_HIGH, + QDF_TRACE_DEBUG_RL( + QDF_MODULE_ID_HDD_SAP_DATA, "%s: NON-EAPOL packet in non-Authenticated state", __func__); goto drop_pkt; @@ -702,19 +704,18 @@ static void __hdd_softap_hard_start_xmit(struct sk_buff *skb, /* check whether need to linearize skb, like non-linear udp data */ if (hdd_skb_nontso_linearize(skb) != QDF_STATUS_SUCCESS) { - QDF_TRACE(QDF_MODULE_ID_HDD_DATA, - QDF_TRACE_LEVEL_INFO_HIGH, - "%s: skb %pK linearize failed. drop the pkt", - __func__, skb); + QDF_TRACE_DEBUG_RL(QDF_MODULE_ID_HDD_DATA, + "%s: skb %pK linearize failed. drop the pkt", + __func__, skb); ++adapter->hdd_stats.tx_rx_stats.tx_dropped_ac[ac]; goto drop_pkt_and_release_skb; } if (adapter->tx_fn(soc, adapter->vdev_id, (qdf_nbuf_t)skb)) { - QDF_TRACE(QDF_MODULE_ID_HDD_SAP_DATA, QDF_TRACE_LEVEL_INFO_HIGH, - "%s: Failed to send packet to txrx for sta: " - QDF_MAC_ADDR_FMT, __func__, - QDF_MAC_ADDR_REF(dest_mac_addr->bytes)); + QDF_TRACE_DEBUG_RL(QDF_MODULE_ID_HDD_SAP_DATA, + "%s: Failed to send packet to txrx for sta: " + QDF_MAC_ADDR_FMT, __func__, + QDF_MAC_ADDR_REF(dest_mac_addr->bytes)); ++adapter->hdd_stats.tx_rx_stats.tx_dropped_ac[ac]; goto drop_pkt_and_release_skb; }