qcacmn: Don't encapsulate packets in htc_send_pkt
Avoid leaking pointers to freed stack memory by not enqueing packets onto a stack local queue in htc_send_pkt In particular, the packet was not being removed from the stack queue when a dma map error occurs. Change-Id: I4519a302b3d6cc19f52e8cefa71dbd750ede0a0b CRs-Fixed: 2119792
This commit is contained in:
@@ -625,25 +625,6 @@ bool htc_get_endpoint_statistics(HTC_HANDLE HTCHandle,
|
||||
*/
|
||||
void htc_unblock_recv(HTC_HANDLE HTCHandle);
|
||||
|
||||
/**
|
||||
* htc_send_pkts_multiple - Send a series of HTC packets
|
||||
* @HTCHandle - HTC handle
|
||||
* @pPktQueue - local queue holding packets to send
|
||||
*
|
||||
* Caller must initialize each packet using SET_HTC_PACKET_INFO_TX()
|
||||
* macro. The queue must only contain packets directed at the same
|
||||
* endpoint. Caller supplies a pointer to an HTC_PACKET_QUEUE structure
|
||||
* holding the TX packets in FIFO order. This API will remove the
|
||||
* packets from the pkt queue and place them into the HTC Tx Queue
|
||||
* and bundle messages where possible.
|
||||
* The caller may allocate the pkt queue on the stack to hold the pkts.
|
||||
* This interface is fully asynchronous. On error, htc_send_pkts will
|
||||
* call the registered Endpoint callback to cleanup the packet.
|
||||
* Return: QDF_STATUS_SUCCESS
|
||||
*/
|
||||
QDF_STATUS htc_send_pkts_multiple(HTC_HANDLE HTCHandle,
|
||||
HTC_PACKET_QUEUE *pPktQueue);
|
||||
|
||||
/**
|
||||
* htc_add_receive_pkt_multiple - Add multiple receive packets to HTC
|
||||
* @HTCHandle - HTC handle
|
||||
|
Reference in New Issue
Block a user