qcacmn: add exception frame flag for non-regular RX delivery

FISA RX aggregation is not necessary for non-regular RX delivery
as it requires extra FISA flush and also may impact regular
dp_rx_process() RX FISA aggregation.
  Add exception frame flag for non-regular RX delivery, so that
FISA path can identify this frame and bypass FISA RX.

Change-Id: Ic06cb72b516221754b124a673ab6c4f392947897
CRs-Fixed: 2680255
このコミットが含まれているのは:
Jinwei Chen
2020-05-13 10:37:01 +08:00
committed by nshrivas
コミット 800b1b181b
2個のファイルの変更33行の追加35行の削除

ファイルの表示

@@ -1791,7 +1791,10 @@ void dp_rx_deliver_to_stack_no_peer(struct dp_soc *soc, qdf_nbuf_t nbuf)
l2_hdr_offset);
if (dp_rx_is_special_frame(nbuf, frame_mask)) {
vdev->osif_rx(vdev->osif_vdev, nbuf);
qdf_nbuf_set_exc_frame(nbuf, 1);
if (QDF_STATUS_SUCCESS !=
vdev->osif_rx(vdev->osif_vdev, nbuf))
goto deliver_fail;
DP_STATS_INC(soc, rx.err.pkt_delivered_no_peer, 1);
return;
}
@@ -2989,6 +2992,7 @@ bool dp_rx_deliver_special_frame(struct dp_soc *soc, struct dp_peer *peer,
qdf_nbuf_pull_head(nbuf, skip_len);
if (dp_rx_is_special_frame(nbuf, frame_mask)) {
qdf_nbuf_set_exc_frame(nbuf, 1);
dp_rx_deliver_to_stack(soc, peer->vdev, peer,
nbuf, NULL);
return true;