Search Linux Wireless

Re: [PATCH] brcm80211:Use proper skb wrapper function in the function brcmf_sdio_txpkt_postp

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 10/03/2015 06:24 AM, Nicholas Krause wrote:
This uses the proper skb wrapper function sk_unlink in the function
brcmf_sdio_txpkt_postp to properly protect against concurrent users
accessing this skb_buff pointer or skb_buff_head pointer by locking
the spinlock as part of the passed skb_buff_head's definition due to
neither this function nor its callers locking this spinlock before
calling skb_unlink in order to avoid possible concurrent access on
either of these possibly shared structure pointers.

Signed-off-by: Nicholas Krause <xerofoify@xxxxxxxxx>
---
  drivers/net/wireless/brcm80211/brcmfmac/sdio.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/brcm80211/brcmfmac/sdio.c b/drivers/net/wireless/brcm80211/brcmfmac/sdio.c
index f990e3d..6b66542 100644
--- a/drivers/net/wireless/brcm80211/brcmfmac/sdio.c
+++ b/drivers/net/wireless/brcm80211/brcmfmac/sdio.c
@@ -2308,7 +2308,7 @@ brcmf_sdio_txpkt_postp(struct brcmf_sdio *bus, struct sk_buff_head *pktq)
  				pkt_prev = pkt_next->prev;
  				skb_put(pkt_prev, chop_len);
  			}
-			__skb_unlink(pkt_next, pktq);
+			skb_unlink(pkt_next, pktq);

Not sure what issue you are trying to solve here. I am pretty sure I used __skb_unlink here on purpose. To my knowledge there is no concurrency issue so please elaborate. Your commit message seems a bit hypothetical.

Regards,
Arend

  			brcmu_pkt_buf_free_skb(pkt_next);
  		} else {
  			hdr = pkt_next->data + bus->tx_hdrlen - SDPCM_SWHDR_LEN;


--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Wireless Personal Area Network]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite Hiking]     [MIPS Linux]     [ARM Linux]     [Linux RAID]

  Powered by Linux