mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-09 13:49:24 -04:00
qcacld-3.0: consider aggregated packets for packet drop
Currently, in the DP RX thread packet drop logic, the aggregated packet as a whole is considered as one single packet. An aggregated packet can hold anywhere between 2-16 packets, considering it as a single packet will make the entire drop logic incorrect. Consider all packets in the aggregate while computing the number of enqueues & dequeues to fix the problem. Change-Id: I70e65bcdfdbaf7821b36606ac6eeae61eaca7406 CRs-Fixed: 2948104
This commit is contained in:
parent
4baa4feae8
commit
770ae51159
1 changed files with 4 additions and 0 deletions
|
|
@ -278,6 +278,8 @@ static QDF_STATUS dp_rx_tm_thread_enqueue(struct dp_rx_thread *rx_thread,
|
|||
qdf_nbuf_set_next(head_ptr, NULL);
|
||||
qdf_nbuf_queue_head_enqueue_tail(&rx_thread->nbuf_queue,
|
||||
head_ptr);
|
||||
/* count aggregated RX frame into enqueued stats */
|
||||
nbuf_queued += qdf_nbuf_get_gso_segs(head_ptr);
|
||||
head_ptr = next_ptr_list;
|
||||
}
|
||||
|
||||
|
|
@ -418,6 +420,8 @@ static int dp_rx_thread_process_nbufq(struct dp_rx_thread *rx_thread)
|
|||
while (nbuf_list) {
|
||||
num_list_elements =
|
||||
QDF_NBUF_CB_RX_NUM_ELEMENTS_IN_LIST(nbuf_list);
|
||||
/* count aggregated RX frame into stats */
|
||||
num_list_elements += qdf_nbuf_get_gso_segs(nbuf_list);
|
||||
rx_thread->stats.nbuf_dequeued += num_list_elements;
|
||||
|
||||
vdev_id = QDF_NBUF_CB_RX_VDEV_ID(nbuf_list);
|
||||
|
|
|
|||
Loading…
Reference in a new issue