]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
iwlwifi: mvm: don't attempt debug collection in rfkill
authorJohannes Berg <johannes.berg@intel.com>
Mon, 25 Mar 2019 13:11:52 +0000 (14:11 +0100)
committerLuca Coelho <luciano.coelho@intel.com>
Thu, 18 Apr 2019 11:07:39 +0000 (14:07 +0300)
If we fail to initialize because rfkill is enabled, then trying
to do debug collection currently just fails. Prevent that in the
high-level code, although we should probably also fix the lower
level code to do things more carefully.

It's not 100% clear that it fixes this commit, as the original
dump code at the time might've been more careful. In any case,
we don't really need to dump anything in this expected scenario.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Fixes: 7125648074e8 ("iwlwifi: add fw dump upon RT ucode start failure")
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/mvm/fw.c
drivers/net/wireless/intel/iwlwifi/mvm/ops.c

index 00a47f6f1d81503a8e8212566efe6ef6e728ccc8..ab68b5d53ec957d02156f3989c336d6b448a70be 100644 (file)
@@ -1121,7 +1121,9 @@ int iwl_mvm_up(struct iwl_mvm *mvm)
        ret = iwl_mvm_load_rt_fw(mvm);
        if (ret) {
                IWL_ERR(mvm, "Failed to start RT ucode: %d\n", ret);
-               iwl_fw_dbg_error_collect(&mvm->fwrt, FW_DBG_TRIGGER_DRIVER);
+               if (ret != -ERFKILL)
+                       iwl_fw_dbg_error_collect(&mvm->fwrt,
+                                                FW_DBG_TRIGGER_DRIVER);
                goto error;
        }
 
index ba27dce4c2bbda399ce95865aeb3c9dda81e1adc..13681b03c10e15a4a42d9a7c598b91d80726abd7 100644 (file)
@@ -834,7 +834,7 @@ iwl_op_mode_mvm_start(struct iwl_trans *trans, const struct iwl_cfg *cfg,
        mutex_lock(&mvm->mutex);
        iwl_mvm_ref(mvm, IWL_MVM_REF_INIT_UCODE);
        err = iwl_run_init_mvm_ucode(mvm, true);
-       if (err)
+       if (err && err != -ERFKILL)
                iwl_fw_dbg_error_collect(&mvm->fwrt, FW_DBG_TRIGGER_DRIVER);
        if (!iwlmvm_mod_params.init_dbg || !err)
                iwl_mvm_stop_device(mvm);