From: Johannes Berg Date: Fri, 27 Dec 2024 08:01:05 +0000 (+0200) Subject: wifi: iwlwifi: restrict driver retry loops to timeouts X-Git-Tag: microblaze-v6.16~163^2~20^2~99 X-Git-Url: http://git.monstr.eu/?a=commitdiff_plain;h=29ce03e6d2d3de1c79fa83552e2282d7e9d37694;p=linux-2.6-microblaze.git wifi: iwlwifi: restrict driver retry loops to timeouts We had reverted the retry loop removal because of an issue with PNVM loading, but that issue manifests as timeouts. Since the retry loops aren't needed in other cases, only do them when there were timeouts while loading, not other errors. Signed-off-by: Johannes Berg Signed-off-by: Miri Korenblit Link: https://patch.msgid.link/20241227095718.a21bf40b0fd3.I70166e460906d6d183359889d7543b9c587b7182@changeid Signed-off-by: Johannes Berg --- diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c index d7bf996d3a82..61ac62591161 100644 --- a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c +++ b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c @@ -1435,12 +1435,15 @@ _iwl_op_mode_start(struct iwl_drv *drv, struct iwlwifi_opmode_table *op) if (test_bit(STATUS_TRANS_DEAD, &drv->trans->status)) break; - IWL_ERR(drv, "retry init count %d\n", retry); - #ifdef CONFIG_IWLWIFI_DEBUGFS debugfs_remove_recursive(drv->dbgfs_op_mode); drv->dbgfs_op_mode = NULL; #endif + + if (PTR_ERR(op_mode) != -ETIMEDOUT) + break; + + IWL_ERR(drv, "retry init count %d\n", retry); } return NULL;