summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKapil Gupta <kapgupta@qti.qualcomm.com>2016-08-10 21:06:07 +0530
committerAnjaneedevi Kapparapu <akappa@codeaurora.org>2016-08-23 11:42:04 +0530
commitb2b69f044a68e7b57baf278f049860c3d13fb9fc (patch)
tree2c6ac2ee00db076bc96717a7271f2c2dfd0dee94
parentcaacbde912df599d3a0ddf4df1200a932c03eeb8 (diff)
qcacld-2.0: Add check in DPT before adding packets in log buffer
Packet type in control buffer will be set only in Tx path, For Rx, packet type should be checked from skb header only. Add changes to parse packet type from skb header for Rx Change-Id: I57fd5c7c4bb7b7c76e5e766460f4c164ec1db7c9 CRs-Fixed: 1052152
-rw-r--r--CORE/SERVICES/COMMON/adf/adf_trace.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/CORE/SERVICES/COMMON/adf/adf_trace.c b/CORE/SERVICES/COMMON/adf/adf_trace.c
index a9a8bf6c2b15..a281f29c7c24 100644
--- a/CORE/SERVICES/COMMON/adf/adf_trace.c
+++ b/CORE/SERVICES/COMMON/adf/adf_trace.c
@@ -437,7 +437,8 @@ bool adf_log_eapol_pkt(uint8_t session_id, struct sk_buff *skb,
enum adf_proto_subtype subtype;
if ((adf_dp_get_proto_bitmap() & NBUF_PKT_TRAC_TYPE_EAPOL) &&
- ADF_NBUF_GET_IS_EAPOL(skb)) {
+ ((dir == ADF_TX && ADF_NBUF_GET_IS_EAPOL(skb)) ||
+ (dir == ADF_RX && adf_nbuf_is_eapol_pkt(skb) == true))) {
subtype = adf_nbuf_get_eapol_subtype(skb);
DPTRACE(adf_dp_trace_proto_pkt(ADF_DP_TRACE_EAPOL_PACKET_RECORD,
@@ -468,7 +469,8 @@ bool adf_log_dhcp_pkt(uint8_t session_id, struct sk_buff *skb,
enum adf_proto_subtype subtype = ADF_PROTO_INVALID;
if ((adf_dp_get_proto_bitmap() & NBUF_PKT_TRAC_TYPE_DHCP) &&
- ADF_NBUF_GET_IS_DHCP(skb)) {
+ ((dir == ADF_TX && ADF_NBUF_GET_IS_DHCP(skb)) ||
+ (dir == ADF_RX && adf_nbuf_is_dhcp_pkt(skb) == true))) {
subtype = adf_nbuf_get_dhcp_subtype(skb);
DPTRACE(adf_dp_trace_proto_pkt(ADF_DP_TRACE_DHCP_PACKET_RECORD,
@@ -500,7 +502,8 @@ bool adf_log_arp_pkt(uint8_t session_id, struct sk_buff *skb,
enum adf_proto_subtype proto_subtype;
if ((adf_dp_get_proto_bitmap() & NBUF_PKT_TRAC_TYPE_ARP) &&
- ADF_NBUF_GET_IS_ARP(skb)) {
+ ((dir == ADF_TX && ADF_NBUF_GET_IS_ARP(skb)) ||
+ (dir == ADF_RX && adf_nbuf_is_ipv4_arp_pkt(skb) == true))){
proto_subtype = adf_nbuf_get_arp_subtype(skb);