staging: rtl8723au: rtw_free_recvframe23a() is always passed precvpriv->free_recv_queue
No point in passing in the pointer to free_recv_queue, when we always pass in the same value. Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
a954a18f46
commit
c5779a0d1f
|
@ -133,18 +133,18 @@ struct recv_frame *rtw_alloc_recvframe23a(struct rtw_queue *pfree_recv_queue)
|
||||||
return pframe;
|
return pframe;
|
||||||
}
|
}
|
||||||
|
|
||||||
int rtw_free_recvframe23a(struct recv_frame *precvframe, struct rtw_queue *pfree_recv_queue)
|
int rtw_free_recvframe23a(struct recv_frame *precvframe)
|
||||||
{
|
{
|
||||||
struct rtw_adapter *padapter = precvframe->adapter;
|
struct rtw_adapter *padapter = precvframe->adapter;
|
||||||
struct recv_priv *precvpriv = &padapter->recvpriv;
|
struct recv_priv *precvpriv = &padapter->recvpriv;
|
||||||
|
struct rtw_queue *pfree_recv_queue;
|
||||||
|
|
||||||
|
|
||||||
if (precvframe->pkt) {
|
if (precvframe->pkt) {
|
||||||
dev_kfree_skb_any(precvframe->pkt);/* free skb by driver */
|
dev_kfree_skb_any(precvframe->pkt);/* free skb by driver */
|
||||||
precvframe->pkt = NULL;
|
precvframe->pkt = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pfree_recv_queue = &precvpriv->free_recv_queue;
|
||||||
spin_lock_bh(&pfree_recv_queue->lock);
|
spin_lock_bh(&pfree_recv_queue->lock);
|
||||||
|
|
||||||
list_del_init(&precvframe->list);
|
list_del_init(&precvframe->list);
|
||||||
|
@ -192,12 +192,11 @@ using spinlock to protect
|
||||||
|
|
||||||
*/
|
*/
|
||||||
|
|
||||||
void rtw_free_recvframe23a_queue(struct rtw_queue *pframequeue, struct rtw_queue *pfree_recv_queue)
|
static void rtw_free_recvframe23a_queue(struct rtw_queue *pframequeue)
|
||||||
{
|
{
|
||||||
struct recv_frame *hdr;
|
struct recv_frame *hdr;
|
||||||
struct list_head *plist, *phead, *ptmp;
|
struct list_head *plist, *phead, *ptmp;
|
||||||
|
|
||||||
|
|
||||||
spin_lock(&pframequeue->lock);
|
spin_lock(&pframequeue->lock);
|
||||||
|
|
||||||
phead = get_list_head(pframequeue);
|
phead = get_list_head(pframequeue);
|
||||||
|
@ -205,12 +204,10 @@ void rtw_free_recvframe23a_queue(struct rtw_queue *pframequeue, struct rtw_queu
|
||||||
|
|
||||||
list_for_each_safe(plist, ptmp, phead) {
|
list_for_each_safe(plist, ptmp, phead) {
|
||||||
hdr = container_of(plist, struct recv_frame, list);
|
hdr = container_of(plist, struct recv_frame, list);
|
||||||
rtw_free_recvframe23a(hdr, pfree_recv_queue);
|
rtw_free_recvframe23a(hdr);
|
||||||
}
|
}
|
||||||
|
|
||||||
spin_unlock(&pframequeue->lock);
|
spin_unlock(&pframequeue->lock);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
u32 rtw_free_uc_swdec_pending_queue23a(struct rtw_adapter *adapter)
|
u32 rtw_free_uc_swdec_pending_queue23a(struct rtw_adapter *adapter)
|
||||||
|
@ -218,8 +215,7 @@ u32 rtw_free_uc_swdec_pending_queue23a(struct rtw_adapter *adapter)
|
||||||
u32 cnt = 0;
|
u32 cnt = 0;
|
||||||
struct recv_frame *pending_frame;
|
struct recv_frame *pending_frame;
|
||||||
while ((pending_frame = rtw_alloc_recvframe23a(&adapter->recvpriv.uc_swdec_pending_queue))) {
|
while ((pending_frame = rtw_alloc_recvframe23a(&adapter->recvpriv.uc_swdec_pending_queue))) {
|
||||||
rtw_free_recvframe23a(pending_frame,
|
rtw_free_recvframe23a(pending_frame);
|
||||||
&adapter->recvpriv.free_recv_queue);
|
|
||||||
DBG_8723A("%s: dequeue uc_swdec_pending_queue\n", __func__);
|
DBG_8723A("%s: dequeue uc_swdec_pending_queue\n", __func__);
|
||||||
cnt++;
|
cnt++;
|
||||||
}
|
}
|
||||||
|
@ -532,8 +528,7 @@ struct recv_frame *decryptor(struct rtw_adapter *padapter,
|
||||||
}
|
}
|
||||||
|
|
||||||
if (res == _FAIL) {
|
if (res == _FAIL) {
|
||||||
rtw_free_recvframe23a(return_packet,
|
rtw_free_recvframe23a(return_packet);
|
||||||
&padapter->recvpriv.free_recv_queue);
|
|
||||||
return_packet = NULL;
|
return_packet = NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -586,8 +581,7 @@ static struct recv_frame *portctrl(struct rtw_adapter *adapter,
|
||||||
prtnframe = precv_frame;
|
prtnframe = precv_frame;
|
||||||
} else {
|
} else {
|
||||||
/* free this frame */
|
/* free this frame */
|
||||||
rtw_free_recvframe23a(precv_frame,
|
rtw_free_recvframe23a(precv_frame);
|
||||||
&adapter->recvpriv.free_recv_queue);
|
|
||||||
prtnframe = NULL;
|
prtnframe = NULL;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
@ -1653,8 +1647,8 @@ struct recv_frame *recvframe_defrag(struct rtw_adapter *adapter,
|
||||||
if (curfragnum != prframe->attrib.frag_num) {
|
if (curfragnum != prframe->attrib.frag_num) {
|
||||||
/* the first fragment number must be 0 */
|
/* the first fragment number must be 0 */
|
||||||
/* free the whole queue */
|
/* free the whole queue */
|
||||||
rtw_free_recvframe23a(prframe, pfree_recv_queue);
|
rtw_free_recvframe23a(prframe);
|
||||||
rtw_free_recvframe23a_queue(defrag_q, pfree_recv_queue);
|
rtw_free_recvframe23a_queue(defrag_q);
|
||||||
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
@ -1674,8 +1668,8 @@ struct recv_frame *recvframe_defrag(struct rtw_adapter *adapter,
|
||||||
/* the fragment number must be increasing
|
/* the fragment number must be increasing
|
||||||
(after decache) */
|
(after decache) */
|
||||||
/* release the defrag_q & prframe */
|
/* release the defrag_q & prframe */
|
||||||
rtw_free_recvframe23a(prframe, pfree_recv_queue);
|
rtw_free_recvframe23a(prframe);
|
||||||
rtw_free_recvframe23a_queue(defrag_q, pfree_recv_queue);
|
rtw_free_recvframe23a_queue(defrag_q);
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1703,7 +1697,7 @@ struct recv_frame *recvframe_defrag(struct rtw_adapter *adapter,
|
||||||
};
|
};
|
||||||
|
|
||||||
/* free the defrag_q queue and return the prframe */
|
/* free the defrag_q queue and return the prframe */
|
||||||
rtw_free_recvframe23a_queue(defrag_q, pfree_recv_queue);
|
rtw_free_recvframe23a_queue(defrag_q);
|
||||||
|
|
||||||
RT_TRACE(_module_rtl871x_recv_c_, _drv_info_,
|
RT_TRACE(_module_rtl871x_recv_c_, _drv_info_,
|
||||||
("Performance defrag!!!!!\n"));
|
("Performance defrag!!!!!\n"));
|
||||||
|
@ -1764,7 +1758,7 @@ struct recv_frame* recvframe_chk_defrag23a(struct rtw_adapter *padapter,
|
||||||
/* the first fragment */
|
/* the first fragment */
|
||||||
if (_rtw_queue_empty23a(pdefrag_q) == false) {
|
if (_rtw_queue_empty23a(pdefrag_q) == false) {
|
||||||
/* free current defrag_q */
|
/* free current defrag_q */
|
||||||
rtw_free_recvframe23a_queue(pdefrag_q, pfree_recv_queue);
|
rtw_free_recvframe23a_queue(pdefrag_q);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -1785,7 +1779,7 @@ struct recv_frame* recvframe_chk_defrag23a(struct rtw_adapter *padapter,
|
||||||
} else {
|
} else {
|
||||||
/* can't find this ta's defrag_queue,
|
/* can't find this ta's defrag_queue,
|
||||||
so free this recv_frame */
|
so free this recv_frame */
|
||||||
rtw_free_recvframe23a(precv_frame, pfree_recv_queue);
|
rtw_free_recvframe23a(precv_frame);
|
||||||
prtnframe = NULL;
|
prtnframe = NULL;
|
||||||
RT_TRACE(_module_rtl871x_recv_c_, _drv_err_,
|
RT_TRACE(_module_rtl871x_recv_c_, _drv_err_,
|
||||||
("Free because pdefrag_q == NULL: ismfrag = "
|
("Free because pdefrag_q == NULL: ismfrag = "
|
||||||
|
@ -1811,7 +1805,7 @@ struct recv_frame* recvframe_chk_defrag23a(struct rtw_adapter *padapter,
|
||||||
} else {
|
} else {
|
||||||
/* can't find this ta's defrag_queue,
|
/* can't find this ta's defrag_queue,
|
||||||
so free this recv_frame */
|
so free this recv_frame */
|
||||||
rtw_free_recvframe23a(precv_frame, pfree_recv_queue);
|
rtw_free_recvframe23a(precv_frame);
|
||||||
prtnframe = NULL;
|
prtnframe = NULL;
|
||||||
RT_TRACE(_module_rtl871x_recv_c_, _drv_err_,
|
RT_TRACE(_module_rtl871x_recv_c_, _drv_err_,
|
||||||
("Free because pdefrag_q == NULL: ismfrag = "
|
("Free because pdefrag_q == NULL: ismfrag = "
|
||||||
|
@ -1826,7 +1820,7 @@ struct recv_frame* recvframe_chk_defrag23a(struct rtw_adapter *padapter,
|
||||||
RT_TRACE(_module_rtl871x_recv_c_, _drv_err_,
|
RT_TRACE(_module_rtl871x_recv_c_, _drv_err_,
|
||||||
("recvframe_chkmic(padapter, prtnframe) =="
|
("recvframe_chkmic(padapter, prtnframe) =="
|
||||||
"_FAIL\n"));
|
"_FAIL\n"));
|
||||||
rtw_free_recvframe23a(prtnframe, pfree_recv_queue);
|
rtw_free_recvframe23a(prtnframe);
|
||||||
prtnframe = NULL;
|
prtnframe = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1842,8 +1836,6 @@ int amsdu_to_msdu(struct rtw_adapter *padapter, struct recv_frame *prframe)
|
||||||
struct rx_pkt_attrib *pattrib;
|
struct rx_pkt_attrib *pattrib;
|
||||||
struct sk_buff *skb, *sub_skb;
|
struct sk_buff *skb, *sub_skb;
|
||||||
struct sk_buff_head skb_list;
|
struct sk_buff_head skb_list;
|
||||||
struct recv_priv *precvpriv = &padapter->recvpriv;
|
|
||||||
struct rtw_queue *pfree_recv_queue = &precvpriv->free_recv_queue;
|
|
||||||
|
|
||||||
pattrib = &prframe->attrib;
|
pattrib = &prframe->attrib;
|
||||||
|
|
||||||
|
@ -1865,7 +1857,7 @@ int amsdu_to_msdu(struct rtw_adapter *padapter, struct recv_frame *prframe)
|
||||||
}
|
}
|
||||||
|
|
||||||
prframe->pkt = NULL;
|
prframe->pkt = NULL;
|
||||||
rtw_free_recvframe23a(prframe, pfree_recv_queue);
|
rtw_free_recvframe23a(prframe);
|
||||||
return _SUCCESS;
|
return _SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2020,10 +2012,8 @@ int recv_indicatepkts_in_order(struct rtw_adapter *padapter,
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (amsdu_to_msdu(padapter, prframe) !=
|
if (amsdu_to_msdu(padapter, prframe) !=
|
||||||
_SUCCESS) {
|
_SUCCESS)
|
||||||
rtw_free_recvframe23a(prframe,
|
rtw_free_recvframe23a(prframe);
|
||||||
&precvpriv->free_recv_queue);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Update local variables. */
|
/* Update local variables. */
|
||||||
|
@ -2228,7 +2218,6 @@ int process_recv_indicatepkts(struct rtw_adapter *padapter,
|
||||||
static int recv_func_prehandle(struct rtw_adapter *padapter,
|
static int recv_func_prehandle(struct rtw_adapter *padapter,
|
||||||
struct recv_frame *rframe)
|
struct recv_frame *rframe)
|
||||||
{
|
{
|
||||||
struct rtw_queue *pfree_recv_queue = &padapter->recvpriv.free_recv_queue;
|
|
||||||
int ret = _SUCCESS;
|
int ret = _SUCCESS;
|
||||||
|
|
||||||
/* check the frame crtl field and decache */
|
/* check the frame crtl field and decache */
|
||||||
|
@ -2236,7 +2225,7 @@ static int recv_func_prehandle(struct rtw_adapter *padapter,
|
||||||
if (ret != _SUCCESS) {
|
if (ret != _SUCCESS) {
|
||||||
RT_TRACE(_module_rtl871x_recv_c_, _drv_info_,
|
RT_TRACE(_module_rtl871x_recv_c_, _drv_info_,
|
||||||
("recv_func: validate_recv_frame fail! drop pkt\n"));
|
("recv_func: validate_recv_frame fail! drop pkt\n"));
|
||||||
rtw_free_recvframe23a(rframe, pfree_recv_queue);
|
rtw_free_recvframe23a(rframe);
|
||||||
goto exit;
|
goto exit;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -2250,7 +2239,6 @@ static int recv_func_posthandle(struct rtw_adapter *padapter,
|
||||||
int ret = _SUCCESS;
|
int ret = _SUCCESS;
|
||||||
struct recv_frame *orig_prframe = prframe;
|
struct recv_frame *orig_prframe = prframe;
|
||||||
struct recv_priv *precvpriv = &padapter->recvpriv;
|
struct recv_priv *precvpriv = &padapter->recvpriv;
|
||||||
struct rtw_queue *pfree_recv_queue = &padapter->recvpriv.free_recv_queue;
|
|
||||||
|
|
||||||
/* DATA FRAME */
|
/* DATA FRAME */
|
||||||
rtw_led_control(padapter, LED_CTL_RX);
|
rtw_led_control(padapter, LED_CTL_RX);
|
||||||
|
@ -2296,7 +2284,7 @@ static int recv_func_posthandle(struct rtw_adapter *padapter,
|
||||||
if (ret != _SUCCESS) {
|
if (ret != _SUCCESS) {
|
||||||
RT_TRACE(_module_rtl871x_recv_c_, _drv_err_,
|
RT_TRACE(_module_rtl871x_recv_c_, _drv_err_,
|
||||||
("recv_func: process_recv_indicatepkts fail!\n"));
|
("recv_func: process_recv_indicatepkts fail!\n"));
|
||||||
rtw_free_recvframe23a(orig_prframe, pfree_recv_queue);/* free this recv_frame */
|
rtw_free_recvframe23a(orig_prframe);/* free this recv_frame */
|
||||||
goto _recv_data_drop;
|
goto _recv_data_drop;
|
||||||
}
|
}
|
||||||
return ret;
|
return ret;
|
||||||
|
|
|
@ -255,7 +255,6 @@ u32 rtw_free_stainfo23a(struct rtw_adapter *padapter, struct sta_info *psta)
|
||||||
struct list_head *phead, *plist;
|
struct list_head *phead, *plist;
|
||||||
struct recv_frame *prframe;
|
struct recv_frame *prframe;
|
||||||
struct rtw_queue *ppending_recvframe_queue;
|
struct rtw_queue *ppending_recvframe_queue;
|
||||||
struct rtw_queue *pfree_recv_queue = &padapter->recvpriv.free_recv_queue;
|
|
||||||
|
|
||||||
preorder_ctrl = &psta->recvreorder_ctrl[i];
|
preorder_ctrl = &psta->recvreorder_ctrl[i];
|
||||||
|
|
||||||
|
@ -271,7 +270,7 @@ u32 rtw_free_stainfo23a(struct rtw_adapter *padapter, struct sta_info *psta)
|
||||||
prframe = container_of(plist, struct recv_frame, list);
|
prframe = container_of(plist, struct recv_frame, list);
|
||||||
plist = plist->next;
|
plist = plist->next;
|
||||||
list_del_init(&prframe->list);
|
list_del_init(&prframe->list);
|
||||||
rtw_free_recvframe23a(prframe, pfree_recv_queue);
|
rtw_free_recvframe23a(prframe);
|
||||||
}
|
}
|
||||||
spin_unlock_bh(&ppending_recvframe_queue->lock);
|
spin_unlock_bh(&ppending_recvframe_queue->lock);
|
||||||
}
|
}
|
||||||
|
|
|
@ -513,7 +513,7 @@ static int recvbuf2recvframe(struct rtw_adapter *padapter, struct sk_buff *pskb)
|
||||||
if (pattrib->crc_err) {
|
if (pattrib->crc_err) {
|
||||||
DBG_8723A("%s()-%d: RX Warning! rx CRC ERROR !!\n",
|
DBG_8723A("%s()-%d: RX Warning! rx CRC ERROR !!\n",
|
||||||
__FUNCTION__, __LINE__);
|
__FUNCTION__, __LINE__);
|
||||||
rtw_free_recvframe23a(precvframe, pfree_recv_queue);
|
rtw_free_recvframe23a(precvframe);
|
||||||
goto _exit_recvbuf2recvframe;
|
goto _exit_recvbuf2recvframe;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -525,7 +525,7 @@ static int recvbuf2recvframe(struct rtw_adapter *padapter, struct sk_buff *pskb)
|
||||||
("recvbuf2recvframe: pkt_len<= 0\n"));
|
("recvbuf2recvframe: pkt_len<= 0\n"));
|
||||||
DBG_8723A("%s()-%d: RX Warning!\n",
|
DBG_8723A("%s()-%d: RX Warning!\n",
|
||||||
__FUNCTION__, __LINE__);
|
__FUNCTION__, __LINE__);
|
||||||
rtw_free_recvframe23a(precvframe, pfree_recv_queue);
|
rtw_free_recvframe23a(precvframe);
|
||||||
goto _exit_recvbuf2recvframe;
|
goto _exit_recvbuf2recvframe;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -570,8 +570,7 @@ static int recvbuf2recvframe(struct rtw_adapter *padapter, struct sk_buff *pskb)
|
||||||
if ((pattrib->mfrag == 1) && (pattrib->frag_num == 0)) {
|
if ((pattrib->mfrag == 1) && (pattrib->frag_num == 0)) {
|
||||||
DBG_8723A("recvbuf2recvframe: alloc_skb fail, "
|
DBG_8723A("recvbuf2recvframe: alloc_skb fail, "
|
||||||
"drop frag frame \n");
|
"drop frag frame \n");
|
||||||
rtw_free_recvframe23a(precvframe,
|
rtw_free_recvframe23a(precvframe);
|
||||||
pfree_recv_queue);
|
|
||||||
goto _exit_recvbuf2recvframe;
|
goto _exit_recvbuf2recvframe;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -579,8 +578,7 @@ static int recvbuf2recvframe(struct rtw_adapter *padapter, struct sk_buff *pskb)
|
||||||
if (!precvframe->pkt) {
|
if (!precvframe->pkt) {
|
||||||
DBG_8723A("recvbuf2recvframe: skb_clone "
|
DBG_8723A("recvbuf2recvframe: skb_clone "
|
||||||
"fail\n");
|
"fail\n");
|
||||||
rtw_free_recvframe23a(precvframe,
|
rtw_free_recvframe23a(precvframe);
|
||||||
pfree_recv_queue);
|
|
||||||
goto _exit_recvbuf2recvframe;
|
goto _exit_recvbuf2recvframe;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -279,11 +279,10 @@ struct recv_frame {
|
||||||
|
|
||||||
/* get a free recv_frame from pfree_recv_queue */
|
/* get a free recv_frame from pfree_recv_queue */
|
||||||
struct recv_frame *rtw_alloc_recvframe23a(struct rtw_queue *pfree_recv_queue);
|
struct recv_frame *rtw_alloc_recvframe23a(struct rtw_queue *pfree_recv_queue);
|
||||||
int rtw_free_recvframe23a(struct recv_frame *precvframe, struct rtw_queue *pfree_recv_queue);
|
int rtw_free_recvframe23a(struct recv_frame *precvframe);
|
||||||
|
|
||||||
int rtw_enqueue_recvframe23a(struct recv_frame *precvframe, struct rtw_queue *queue);
|
int rtw_enqueue_recvframe23a(struct recv_frame *precvframe, struct rtw_queue *queue);
|
||||||
|
|
||||||
void rtw_free_recvframe23a_queue(struct rtw_queue *pframequeue, struct rtw_queue *pfree_recv_queue);
|
|
||||||
u32 rtw_free_uc_swdec_pending_queue23a(struct rtw_adapter *adapter);
|
u32 rtw_free_uc_swdec_pending_queue23a(struct rtw_adapter *adapter);
|
||||||
|
|
||||||
int rtw_enqueue_recvbuf23a_to_head(struct recv_buf *precvbuf, struct rtw_queue *queue);
|
int rtw_enqueue_recvbuf23a_to_head(struct recv_buf *precvbuf, struct rtw_queue *queue);
|
||||||
|
|
|
@ -73,12 +73,10 @@ int rtw_recv_indicatepkt23a(struct rtw_adapter *padapter,
|
||||||
struct recv_frame *precv_frame)
|
struct recv_frame *precv_frame)
|
||||||
{
|
{
|
||||||
struct recv_priv *precvpriv;
|
struct recv_priv *precvpriv;
|
||||||
struct rtw_queue *pfree_recv_queue;
|
|
||||||
struct sk_buff *skb;
|
struct sk_buff *skb;
|
||||||
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
|
struct mlme_priv *pmlmepriv = &padapter->mlmepriv;
|
||||||
|
|
||||||
precvpriv = &(padapter->recvpriv);
|
precvpriv = &padapter->recvpriv;
|
||||||
pfree_recv_queue = &(precvpriv->free_recv_queue);
|
|
||||||
|
|
||||||
skb = precv_frame->pkt;
|
skb = precv_frame->pkt;
|
||||||
if (!skb) {
|
if (!skb) {
|
||||||
|
@ -147,7 +145,7 @@ _recv_indicatepkt_end:
|
||||||
|
|
||||||
precv_frame->pkt = NULL; /* pointers to NULL before rtw_free_recvframe23a() */
|
precv_frame->pkt = NULL; /* pointers to NULL before rtw_free_recvframe23a() */
|
||||||
|
|
||||||
rtw_free_recvframe23a(precv_frame, pfree_recv_queue);
|
rtw_free_recvframe23a(precv_frame);
|
||||||
|
|
||||||
RT_TRACE(_module_recv_osdep_c_, _drv_info_,
|
RT_TRACE(_module_recv_osdep_c_, _drv_info_,
|
||||||
("\n rtw_recv_indicatepkt23a :after netif_rx!!!!\n"));
|
("\n rtw_recv_indicatepkt23a :after netif_rx!!!!\n"));
|
||||||
|
@ -155,7 +153,7 @@ _recv_indicatepkt_end:
|
||||||
|
|
||||||
_recv_indicatepkt_drop:
|
_recv_indicatepkt_drop:
|
||||||
|
|
||||||
rtw_free_recvframe23a(precv_frame, pfree_recv_queue);
|
rtw_free_recvframe23a(precv_frame);
|
||||||
return _FAIL;
|
return _FAIL;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue