Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6fd1fb63 authored by Luciano Coelho's avatar Luciano Coelho Committed by Emmanuel Grumbach
Browse files

iwlwifi: mvm: return the actual error code when switch_vif_chanctx fails



We have code to recover and go back to the original channel context if
something fails in the middle of switch_vif_chanctx, but we return the
error code of the recover calls instead of the original code, so if
the recovery succeeds, we will return 0 (success).  Fix this by not
assigning the return value of the recovery calls to ret.

Signed-off-by: default avatarLuciano Coelho <luciano.coelho@intel.com>
parent 48a256e8
Loading
Loading
Loading
Loading
+3 −5
Original line number Diff line number Diff line
@@ -2988,15 +2988,13 @@ iwl_mvm_switch_vif_chanctx_swap(struct iwl_mvm *mvm,
	__iwl_mvm_remove_chanctx(mvm, vifs[0].new_ctx);

out_reassign:
	ret = __iwl_mvm_add_chanctx(mvm, vifs[0].old_ctx);
	if (ret) {
	if (__iwl_mvm_add_chanctx(mvm, vifs[0].old_ctx)) {
		IWL_ERR(mvm, "failed to add old_ctx back after failure.\n");
		goto out_restart;
	}

	ret = __iwl_mvm_assign_vif_chanctx(mvm, vifs[0].vif, vifs[0].old_ctx,
					   true);
	if (ret) {
	if (__iwl_mvm_assign_vif_chanctx(mvm, vifs[0].vif, vifs[0].old_ctx,
					 true)) {
		IWL_ERR(mvm, "failed to reassign old_ctx after failure.\n");
		goto out_restart;
	}