[PATCH] wireless/marvell/mwifiex: Fix a double free in mwifiex_send_tdls_action_frame

From: Lv Yunlong
Date: Mon Mar 29 2021 - 07:25:29 EST


In mwifiex_send_tdls_action_frame, it calls mwifiex_construct_tdls_action_frame
(..,skb). The skb will be freed in mwifiex_construct_tdls_action_frame() when
it is failed. But when mwifiex_construct_tdls_action_frame() returns error,
the skb will be freed in the second time by dev_kfree_skb_any(skb).

My patch removes the redundant dev_kfree_skb_any(skb) when
mwifiex_construct_tdls_action_frame() failed.

Fixes: b23bce2965680 ("mwifiex: add tdls_mgmt handler support")
Signed-off-by: Lv Yunlong <lyl2019@xxxxxxxxxxxxxxxx>
---
drivers/net/wireless/marvell/mwifiex/tdls.c | 1 -
1 file changed, 1 deletion(-)

diff --git a/drivers/net/wireless/marvell/mwifiex/tdls.c b/drivers/net/wireless/marvell/mwifiex/tdls.c
index 97bb87c3676b..8d4d0a9cf6ac 100644
--- a/drivers/net/wireless/marvell/mwifiex/tdls.c
+++ b/drivers/net/wireless/marvell/mwifiex/tdls.c
@@ -856,7 +856,6 @@ int mwifiex_send_tdls_action_frame(struct mwifiex_private *priv, const u8 *peer,
if (mwifiex_construct_tdls_action_frame(priv, peer, action_code,
dialog_token, status_code,
skb)) {
- dev_kfree_skb_any(skb);
return -EINVAL;
}

--
2.25.1