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