Ver código fonte

qcacmn: fix dp_rx_process_be dead loop issue

For T-put test case, if near_full IRQ is fired, ring_near_full
flag will be set and host will always reap reo2sw ring as much
as possible, but if quota 0, this will lead to dead loop
in dp_rx_process_be.

stop reaping reo2sw ring if quota is 0 even ring_near_full is set.

Change-Id: Ifea885162be3ccc6ae0515fc3c2538c459372887
CRs-Fixed: 3067231
Jinwei Chen 3 anos atrás
pai
commit
dcdd40116f
1 arquivos alterados com 1 adições e 1 exclusões
  1. 1 1
      dp/wifi3.0/be/dp_be_rx.c

+ 1 - 1
dp/wifi3.0/be/dp_be_rx.c

@@ -769,7 +769,7 @@ done:
 	 *
 	 * One more loop will move the state to normal processing and yield
 	 */
-	if (ring_near_full)
+	if (ring_near_full && quota)
 		goto more_data;
 
 	if (dp_rx_enable_eol_data_check(soc) && rx_bufs_used) {