Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5e16e8ee authored by Arend van Spriel's avatar Arend van Spriel Committed by John W. Linville
Browse files

brcmsmac: fix smatch warning found in ampdu.c



This patch fixes potential NULL pointer dereference in ampdu. This
was found running smatch static code checker. Smatch warning says:

drivers/net/wireless/brcm80211/brcmsmac/ampdu.c:741 brcms_c_sendampdu()
	 warn: variable dereferenced before check 'p'

Reported-by: default avatarDan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: default avatarPieter-Paul Giesberts <pieterpg@broadcom.com>
Signed-off-by: default avatarArend van Spriel <arend@broadcom.com>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent d597ee7e
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -735,10 +735,8 @@ brcms_c_sendampdu(struct ampdu_info *ampdu, struct brcms_txq_info *qi,
		 * a candidate for aggregation
		 */
		p = pktq_ppeek(&qi->q, prec);
		/* tx_info must be checked with current p */
		tx_info = IEEE80211_SKB_CB(p);

		if (p) {
			tx_info = IEEE80211_SKB_CB(p);
			if ((tx_info->flags & IEEE80211_TX_CTL_AMPDU) &&
			    ((u8) (p->priority) == tid)) {
				plen = p->len + AMPDU_MAX_MPDU_OVERHEAD;
@@ -759,6 +757,7 @@ brcms_c_sendampdu(struct ampdu_info *ampdu, struct brcms_txq_info *qi,
					p = NULL;
					continue;
				}
				/* next packet fit for aggregation so dequeue */
				p = brcmu_pktq_pdeq(&qi->q, prec);
			} else {
				p = NULL;