From 31bddce96678a61ba65dcf9083a399da7fd78ad7 Mon Sep 17 00:00:00 2001 From: Rakesh Pillai Date: Wed, 4 Nov 2020 22:36:15 +0530 Subject: [PATCH] qcacld-3.0: Mark packets to be sent to FW in control block Classify the ICMP request packet and mark it to be sent to the firmware in the packet control block. Change-Id: Ic48123864bfc206c0659003b75238cacedb96134 CRs-Fixed: 2813173 --- core/hdd/src/wlan_hdd_tx_rx.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/core/hdd/src/wlan_hdd_tx_rx.c b/core/hdd/src/wlan_hdd_tx_rx.c index 96d5b76c0013..ca918dcfef75 100644 --- a/core/hdd/src/wlan_hdd_tx_rx.c +++ b/core/hdd/src/wlan_hdd_tx_rx.c @@ -1048,6 +1048,16 @@ static void __hdd_hard_start_xmit(struct sk_buff *skb, QDF_NBUF_CB_TX_EXTRA_FRAG_FLAGS_NOTIFY_COMP(skb) = 1; is_dhcp = true; } + } else if (QDF_NBUF_CB_GET_PACKET_TYPE(skb) == + QDF_NBUF_CB_PACKET_TYPE_ICMP) { + subtype = qdf_nbuf_get_icmp_subtype(skb); + /* + * Mark the ICMP requests to be sent to FW. + * The decision on whether its actually sent to FW + * is done in the DATAPATH layer. + */ + if (subtype == QDF_PROTO_ICMP_REQ) + QDF_NBUF_CB_TX_PACKET_TO_FW(skb) = 1; } /* track connectivity stats */ if (adapter->pkt_type_bitmap)