qcacmn: Fix double memfree issue in MCAST2UCAST
Fix the condition check for return value in DP transmit path for MCAST2UCAST Change-Id: I81220838ce1c867afdab6447a30d7d7076f0c094 CRs-Fixed: 2164244
Šī revīzija ir iekļauta:

revīziju iesūtīja
snandini

vecāks
9c524f5fc4
revīzija
aeff44499d
@@ -1744,7 +1744,8 @@ qdf_nbuf_t dp_tx_send(void *vap_dev, qdf_nbuf_t nbuf)
|
||||
DP_STATS_INC_PKT(vdev,
|
||||
tx_i.mcast_en.mcast_pkt, 1,
|
||||
qdf_nbuf_len(nbuf));
|
||||
if (dp_tx_prepare_send_me(vdev, nbuf) > 0) {
|
||||
if (dp_tx_prepare_send_me(vdev, nbuf) !=
|
||||
QDF_STATUS_SUCCESS) {
|
||||
qdf_nbuf_free(nbuf);
|
||||
return NULL;
|
||||
}
|
||||
|
@@ -151,7 +151,7 @@ qdf_nbuf_t dp_tx_non_std(struct cdp_vdev *vdev_handle,
|
||||
|
||||
uint32_t dp_tx_comp_handler(struct dp_soc *soc, void *hal_srng, uint32_t quota);
|
||||
|
||||
int32_t
|
||||
QDF_STATUS
|
||||
dp_tx_prepare_send_me(struct dp_vdev *vdev, qdf_nbuf_t nbuf);
|
||||
|
||||
#ifndef CONVERGED_TDLS_ENABLE
|
||||
|
@@ -181,11 +181,16 @@ dp_tx_me_free_descriptor(struct cdp_pdev *pdev_handle)
|
||||
*
|
||||
* Return: no of packets transmitted
|
||||
*/
|
||||
int32_t
|
||||
QDF_STATUS
|
||||
dp_tx_prepare_send_me(struct dp_vdev *vdev, qdf_nbuf_t nbuf)
|
||||
{
|
||||
if (vdev->me_convert)
|
||||
return vdev->me_convert(vdev->osif_vdev, nbuf);
|
||||
return 0;
|
||||
if (vdev->me_convert) {
|
||||
if (vdev->me_convert(vdev->osif_vdev, nbuf) < 0)
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
|
||||
return QDF_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
return QDF_STATUS_E_FAILURE;
|
||||
}
|
||||
#endif
|
||||
|
Atsaukties uz šo jaunā problēmā
Block a user