mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-25 20:14:25 +08:00
mwifiex: fix NULL packet downloading issues
This patch makes sure that skb is freed after downloading NULL packet in error cases. Also, USB chipsets return -EINPROGRESS after downloading packets, they are freed in USB completion handler later. We will add missing change to set tx_lock_flag for USB which blocks further packets. Signed-off-by: Amitkumar Karwar <akarwar@marvell.com> Signed-off-by: Cathy Luo <cluo@marvell.com> Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
parent
7a1f4e61eb
commit
0ea3186ce0
@ -183,9 +183,13 @@ int mwifiex_send_null_packet(struct mwifiex_private *priv, u8 flags)
|
||||
}
|
||||
switch (ret) {
|
||||
case -EBUSY:
|
||||
adapter->data_sent = true;
|
||||
/* Fall through FAILURE handling */
|
||||
dev_kfree_skb_any(skb);
|
||||
dev_err(adapter->dev, "%s: host_to_card failed: ret=%d\n",
|
||||
__func__, ret);
|
||||
adapter->dbg.num_tx_host_to_card_failure++;
|
||||
break;
|
||||
case -1:
|
||||
adapter->data_sent = false;
|
||||
dev_kfree_skb_any(skb);
|
||||
dev_err(adapter->dev, "%s: host_to_card failed: ret=%d\n",
|
||||
__func__, ret);
|
||||
@ -198,6 +202,7 @@ int mwifiex_send_null_packet(struct mwifiex_private *priv, u8 flags)
|
||||
adapter->tx_lock_flag = true;
|
||||
break;
|
||||
case -EINPROGRESS:
|
||||
adapter->tx_lock_flag = true;
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user