Prechádzať zdrojové kódy

qcacld-3.0: Fix epping memory errors

Epping nbuf packets were being tracked by cdf nbug tracking. This change
stops tracking of packets prior to being released into the network stack.
and uses the correct nbuf free routine for tx packets.

Change-Id: Ib986fb595139ace706db00839cf1dabb983013fd
CRs-Fixed: 989695
Rajeev Kumar 9 rokov pred
rodič
commit
8044edeb8f

+ 1 - 0
core/utils/epping/src/epping_rx.c

@@ -142,6 +142,7 @@ void epping_rx(void *ctx, HTC_PACKET *pPacket)
 			pktSkb->protocol = eth_type_trans(pktSkb, pktSkb->dev);
 			++pAdapter->stats.rx_packets;
 			pAdapter->stats.rx_bytes += pktSkb->len;
+			qdf_net_buf_debug_release_skb(pktSkb);
 			if (hdd_napi_enabled(HDD_NAPI_ANY))
 				netif_receive_skb(pktSkb);
 			else

+ 1 - 1
core/utils/epping/src/epping_tx.c

@@ -375,7 +375,7 @@ void epping_tx_complete_multiple(void *ctx, HTC_PACKET_QUEUE *pPacketQueue)
 		pktSkb = qdf_nbuf_queue_remove(&skb_queue);
 		if (pktSkb == NULL)
 			break;
-		qdf_nbuf_free(pktSkb);
+		qdf_nbuf_tx_free(pktSkb, QDF_NBUF_PKT_ERROR);
 		pEpping_ctx->total_tx_acks++;
 	}