diff mbox series

iwlwifi: mvm: Fix an error handling path in 'ebu_dma_start()'

Message ID 20210124075637.732126-1-christophe.jaillet@wanadoo.fr
State New
Delegated to: Luca Coelho
Headers show
Series iwlwifi: mvm: Fix an error handling path in 'ebu_dma_start()' | expand

Commit Message

Christophe JAILLET Jan. 24, 2021, 7:56 a.m. UTC
If the 'cmd_ver' check fails, we must release some memory as already done
in all the other error handling paths of this function.

Fixes: 9e3c39361a30 ("iwlwifi: mvm: support new KEK KCK api")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
---
 drivers/net/wireless/intel/iwlwifi/mvm/d3.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

Comments

Christophe JAILLET Jan. 24, 2021, 8:09 a.m. UTC | #1
Le 24/01/2021 à 08:56, Christophe JAILLET a écrit :
> If the 'cmd_ver' check fails, we must release some memory as already done
> in all the other error handling paths of this function.
> 
> Fixes: 9e3c39361a30 ("iwlwifi: mvm: support new KEK KCK api")
> Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> ---
>   drivers/net/wireless/intel/iwlwifi/mvm/d3.c | 6 ++++--
>   1 file changed, 4 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/d3.c b/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
> index c025188fa9bc..2fb897cbfca6 100644
> --- a/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
> +++ b/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
> @@ -810,8 +810,10 @@ static int iwl_mvm_wowlan_config_key_params(struct iwl_mvm *mvm,
>   						WOWLAN_KEK_KCK_MATERIAL,
>   						IWL_FW_CMD_VER_UNKNOWN);
>   		if (WARN_ON(cmd_ver != 2 && cmd_ver != 3 &&
> -			    cmd_ver != IWL_FW_CMD_VER_UNKNOWN))
> -			return -EINVAL;
> +			    cmd_ver != IWL_FW_CMD_VER_UNKNOWN)) {
> +			ret = -EINVAL;
> +			goto out;
> +		}
>   		if (cmd_ver == 3)
>   			cmd_size = sizeof(struct iwl_wowlan_kek_kck_material_cmd_v3);
>   		else
> 

NACK.
I'll resend with the correct subject.

CJ
diff mbox series

Patch

diff --git a/drivers/net/wireless/intel/iwlwifi/mvm/d3.c b/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
index c025188fa9bc..2fb897cbfca6 100644
--- a/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
+++ b/drivers/net/wireless/intel/iwlwifi/mvm/d3.c
@@ -810,8 +810,10 @@  static int iwl_mvm_wowlan_config_key_params(struct iwl_mvm *mvm,
 						WOWLAN_KEK_KCK_MATERIAL,
 						IWL_FW_CMD_VER_UNKNOWN);
 		if (WARN_ON(cmd_ver != 2 && cmd_ver != 3 &&
-			    cmd_ver != IWL_FW_CMD_VER_UNKNOWN))
-			return -EINVAL;
+			    cmd_ver != IWL_FW_CMD_VER_UNKNOWN)) {
+			ret = -EINVAL;
+			goto out;
+		}
 		if (cmd_ver == 3)
 			cmd_size = sizeof(struct iwl_wowlan_kek_kck_material_cmd_v3);
 		else