aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath10k/wmi-tlv.c
diff options
context:
space:
mode:
authorMichal Kazior <michal.kazior@tieto.com>2015-06-08 13:23:27 +0200
committerKalle Valo <kvalo@qca.qualcomm.com>2015-06-09 13:49:33 +0300
commit469d479f91b8277cc921d7525f31c832b25d9efb (patch)
tree64de3d2ced7b71e7aa442aa9fc6a3e4b192caa04 /drivers/net/wireless/ath/ath10k/wmi-tlv.c
parentath10k: fix channel switching (diff)
downloadlinux-dev-469d479f91b8277cc921d7525f31c832b25d9efb.tar.xz
linux-dev-469d479f91b8277cc921d7525f31c832b25d9efb.zip
ath10k: prevent memory leak in wmi rx ops
Found during code review. This was pretty much impossible to happen but better safe than sorry. Signed-off-by: Michal Kazior <michal.kazior@tieto.com> Signed-off-by: Kalle Valo <kvalo@qca.qualcomm.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath10k/wmi-tlv.c')
-rw-r--r--drivers/net/wireless/ath/ath10k/wmi-tlv.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/wireless/ath/ath10k/wmi-tlv.c b/drivers/net/wireless/ath/ath10k/wmi-tlv.c
index 563fde73623c..8fdba3865c96 100644
--- a/drivers/net/wireless/ath/ath10k/wmi-tlv.c
+++ b/drivers/net/wireless/ath/ath10k/wmi-tlv.c
@@ -402,7 +402,7 @@ static void ath10k_wmi_tlv_op_rx(struct ath10k *ar, struct sk_buff *skb)
id = MS(__le32_to_cpu(cmd_hdr->cmd_id), WMI_CMD_HDR_CMD_ID);
if (skb_pull(skb, sizeof(struct wmi_cmd_hdr)) == NULL)
- return;
+ goto out;
trace_ath10k_wmi_event(ar, id, skb->data, skb->len);
@@ -521,6 +521,7 @@ static void ath10k_wmi_tlv_op_rx(struct ath10k *ar, struct sk_buff *skb)
break;
}
+out:
dev_kfree_skb(skb);
}