mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-09 19:51:25 -04:00
staging: r8188eu: Fix smatch warnings in core/rtw_recv.c
Smatch reports the following: drivers/staging/rtl8188eu/core/rtw_recv.c:211 rtw_free_recvframe() warn: variable dereferenced before check 'precvframe' (see line 207) drivers/staging/rtl8188eu/core/rtw_recv.c:1803 amsdu_to_msdu() warn: variable dereferenced before check 'sub_skb' (see line 1784) The code was rearranged to eliminate the dereference before the check. Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
937ebbdec5
commit
9840093505
@@ -204,12 +204,14 @@ void rtw_init_recvframe(union recv_frame *precvframe, struct recv_priv *precvpri
|
||||
int rtw_free_recvframe(union recv_frame *precvframe, struct __queue *pfree_recv_queue)
|
||||
{
|
||||
unsigned long irqL;
|
||||
struct adapter *padapter = precvframe->u.hdr.adapter;
|
||||
struct recv_priv *precvpriv = &padapter->recvpriv;
|
||||
struct adapter *padapter;
|
||||
struct recv_priv *precvpriv;
|
||||
|
||||
_func_enter_;
|
||||
if (!precvframe)
|
||||
return _FAIL;
|
||||
padapter = precvframe->u.hdr.adapter;
|
||||
precvpriv = &padapter->recvpriv;
|
||||
if (precvframe->u.hdr.pkt) {
|
||||
dev_kfree_skb_any(precvframe->u.hdr.pkt);/* free skb by driver */
|
||||
precvframe->u.hdr.pkt = NULL;
|
||||
@@ -1799,16 +1801,14 @@ static int amsdu_to_msdu(struct adapter *padapter, union recv_frame *prframe)
|
||||
memcpy(skb_push(sub_skb, ETH_ALEN), pattrib->dst, ETH_ALEN);
|
||||
}
|
||||
|
||||
/* Indicat the packets to upper layer */
|
||||
if (sub_skb) {
|
||||
/* Insert NAT2.5 RX here! */
|
||||
sub_skb->protocol = eth_type_trans(sub_skb, padapter->pnetdev);
|
||||
sub_skb->dev = padapter->pnetdev;
|
||||
/* Indicate the packets to upper layer */
|
||||
/* Insert NAT2.5 RX here! */
|
||||
sub_skb->protocol = eth_type_trans(sub_skb, padapter->pnetdev);
|
||||
sub_skb->dev = padapter->pnetdev;
|
||||
|
||||
sub_skb->ip_summed = CHECKSUM_NONE;
|
||||
sub_skb->ip_summed = CHECKSUM_NONE;
|
||||
|
||||
netif_rx(sub_skb);
|
||||
}
|
||||
netif_rx(sub_skb);
|
||||
}
|
||||
|
||||
exit:
|
||||
|
||||
Reference in New Issue
Block a user