diff options
| author | Himanshu Agarwal <himanaga@codeaurora.org> | 2016-10-05 13:52:34 +0530 |
|---|---|---|
| committer | Anjaneedevi Kapparapu <akappa@codeaurora.org> | 2016-10-07 11:34:52 +0530 |
| commit | d4bd27b6de620db9976f52500b90873675aa59cd (patch) | |
| tree | 9ee9bbdbac9a8a7f3979ac90fd9b79607ac49987 | |
| parent | 733c2b94c7af0090beeb62195ee6855c9909f4fb (diff) | |
qcacld-2.0: Fix DPTRACE implementation in rx path
Fix DPTRACE implementation in rx path by:
1) Adding NBUF_SET_PACKET_TRACK for data packet in
ol_rx_offload_paddr_deliver_ind_handler.
2) Using correct API for setting packet track for
data packet in htt_rx_amsdu_rx_in_order_pop_ll.
Change-Id: Iab77f19ee0040d601b3e91013d08a04362b3d4a9
CRs-Fixed: 1074435
| -rw-r--r-- | CORE/CLD_TXRX/HTT/htt_rx.c | 2 | ||||
| -rw-r--r-- | CORE/CLD_TXRX/TXRX/ol_rx.c | 1 | ||||
| -rw-r--r-- | CORE/SERVICES/COMMON/adf/linux/adf_nbuf_pvt.h | 24 |
3 files changed, 10 insertions, 17 deletions
diff --git a/CORE/CLD_TXRX/HTT/htt_rx.c b/CORE/CLD_TXRX/HTT/htt_rx.c index 6dc8dc553270..fa6c1bb68547 100644 --- a/CORE/CLD_TXRX/HTT/htt_rx.c +++ b/CORE/CLD_TXRX/HTT/htt_rx.c @@ -1903,7 +1903,7 @@ htt_rx_amsdu_rx_in_order_pop_ll( adf_nbuf_pull_head(msdu, HTT_RX_STD_DESC_RESERVATION); adf_dp_trace_set_track(msdu, ADF_RX); - ADF_NBUF_CB_RX_PACKET_TRACE(msdu) = NBUF_TX_PKT_DATA_TRACK; + NBUF_SET_PACKET_TRACK(msdu, NBUF_TX_PKT_DATA_TRACK); ol_rx_log_packet(pdev, peer_id, msdu); DPTRACE(adf_dp_trace(msdu, ADF_DP_TRACE_RX_HTT_PACKET_PTR_RECORD, diff --git a/CORE/CLD_TXRX/TXRX/ol_rx.c b/CORE/CLD_TXRX/TXRX/ol_rx.c index 87a680af2189..8cf760a5500f 100644 --- a/CORE/CLD_TXRX/TXRX/ol_rx.c +++ b/CORE/CLD_TXRX/TXRX/ol_rx.c @@ -1372,6 +1372,7 @@ ol_rx_offload_paddr_deliver_ind_handler( peer = ol_txrx_peer_find_by_id(htt_pdev->txrx_pdev, peer_id); if (peer && peer->vdev) { adf_dp_trace_set_track(head_buf, ADF_RX); + NBUF_SET_PACKET_TRACK(head_buf, NBUF_TX_PKT_DATA_TRACK); adf_dp_trace_log_pkt(peer->vdev->vdev_id, head_buf, ADF_RX); DPTRACE(adf_dp_trace(head_buf, diff --git a/CORE/SERVICES/COMMON/adf/linux/adf_nbuf_pvt.h b/CORE/SERVICES/COMMON/adf/linux/adf_nbuf_pvt.h index 13a1339a947f..e95a0b63b53e 100644 --- a/CORE/SERVICES/COMMON/adf/linux/adf_nbuf_pvt.h +++ b/CORE/SERVICES/COMMON/adf/linux/adf_nbuf_pvt.h @@ -65,17 +65,6 @@ typedef void (*__adf_nbuf_callback_fn) (struct sk_buff *skb); #define CVG_NBUF_MAX_EXTRA_FRAGS 2 typedef void (*adf_nbuf_trace_update_t)(char *); -struct nbuf_rx_cb { - uint8_t dp_trace:1, - reserved:7; - uint8_t packet_trace; -}; - -#define ADF_NBUF_CB_RX_DP_TRACE(skb) \ - (((struct nbuf_rx_cb*)((skb)->cb))->dp_trace) - -#define ADF_NBUF_CB_RX_PACKET_TRACE(skb) \ - (((struct nbuf_rx_cb*)((skb)->cb))->packet_trace) struct cvg_nbuf_cb { /* @@ -99,10 +88,10 @@ struct cvg_nbuf_cb { * Store info for data path tracing */ struct { - uint8_t packet_state: 4; - uint8_t packet_track: 2; - uint8_t dp_trace: 1; - uint8_t dp_trace_reserved: 1; + uint8_t packet_state:4; + uint8_t packet_track:2; + uint8_t dp_trace_tx:1; + uint8_t dp_trace_rx:1; } trace; /* @@ -271,7 +260,10 @@ struct cvg_nbuf_cb { adf_nbuf_set_state(skb, PACKET_STATE) #define ADF_NBUF_CB_TX_DP_TRACE(skb) \ - (((struct cvg_nbuf_cb *)((skb)->cb))->trace.dp_trace) + (((struct cvg_nbuf_cb *)((skb)->cb))->trace.dp_trace_tx) + +#define ADF_NBUF_CB_RX_DP_TRACE(skb) \ + (((struct cvg_nbuf_cb *)((skb)->cb))->trace.dp_trace_rx) #define ADF_NBUF_GET_IS_EAPOL(skb) \ (((struct cvg_nbuf_cb *)((skb)->cb))->packet_type.is_eapol) |
