Merge "qca-wifi: Add QoS NULL Check for Data Frames"

This commit is contained in:
Linux Build Service Account
2020-03-05 04:38:40 -08:00
committed by Gerrit - the friendly Code Review server

View File

@@ -2936,10 +2936,10 @@ dp_check_ppdu_and_deliver(struct dp_pdev *pdev,
continue;
}
if (ppdu_desc->frame_type == CDP_PPDU_FTYPE_CTRL ||
ppdu_desc->htt_frame_type ==
HTT_STATS_FTYPE_SGEN_QOS_NULL ||
type != FRAME_CTRL_TYPE_DATA) {
if ((ppdu_desc->frame_type == CDP_PPDU_FTYPE_CTRL) ||
(ppdu_desc->htt_frame_type ==
HTT_STATS_FTYPE_SGEN_QOS_NULL) ||
(type != FRAME_CTRL_TYPE_DATA)) {
qdf_nbuf_t nbuf_ppdu = nbuf_ppdu_desc_list[desc_cnt];
if (dp_check_mgmt_ctrl_ppdu(pdev, nbuf_ppdu)) {
@@ -3235,6 +3235,7 @@ void dp_tx_ppdu_stats_process(void *context)
uint32_t num_msdu = 0;
uint32_t qlen = 0;
uint16_t peer_id;
uint8_t type, subtype;
qdf_nbuf_queue_init(&head_msdu);
qdf_nbuf_queue_init(&head_xretries);
@@ -3257,6 +3258,18 @@ void dp_tx_ppdu_stats_process(void *context)
ppdu_desc = (struct cdp_tx_completion_ppdu *)
qdf_nbuf_data(nbuf);
type = (ppdu_desc->frame_ctrl &
IEEE80211_FC0_TYPE_MASK);
subtype = (ppdu_desc->frame_ctrl &
IEEE80211_FC0_SUBTYPE_MASK);
if ((type == IEEE80211_FC0_TYPE_DATA) &&
(subtype == IEEE80211_FC0_SUBTYPE_QOS_NULL) &&
(ppdu_desc->htt_frame_type ==
HTT_STATS_FTYPE_TIDQ_DATA_SU)) {
ppdu_desc->htt_frame_type =
HTT_STATS_FTYPE_SGEN_QOS_NULL;
}
/* send WDI event */
if (pdev->tx_capture_enabled ==
@@ -3301,9 +3314,11 @@ void dp_tx_ppdu_stats_process(void *context)
continue;
}
if ((ppdu_desc->frame_type == CDP_PPDU_FTYPE_DATA) ||
(ppdu_desc->num_mpdu &&
ppdu_desc->frame_type == CDP_PPDU_FTYPE_BAR)) {
if (((ppdu_desc->frame_type == CDP_PPDU_FTYPE_DATA) &&
(ppdu_desc->htt_frame_type !=
HTT_STATS_FTYPE_SGEN_QOS_NULL)) ||
((ppdu_desc->num_mpdu) &&
(ppdu_desc->frame_type == CDP_PPDU_FTYPE_BAR))) {
peer_id = ppdu_desc->user[0].peer_id;
peer = dp_peer_find_by_id(pdev->soc, peer_id);
/**