iwlwifi: don't warn if we can't wait for empty tx queues
authorEmmanuel Grumbach <emmanuel.grumbach@intel.com>
Sun, 11 Apr 2021 09:46:21 +0000 (12:46 +0300)
committerLuca Coelho <luciano.coelho@intel.com>
Wed, 14 Apr 2021 09:07:18 +0000 (12:07 +0300)
If the firmware is dead, the Tx queues won't drain, but
leaving a print in the log is enough, no need to WARN.
If the firmware is dead, we must already have printed enough
information in the log anyway.

Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Link: https://lore.kernel.org/r/iwlwifi.20210411124417.9a438b2320a9.I4aa897178df82acefd80173d76dd6849ad1bcdc1@changeid
Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
drivers/net/wireless/intel/iwlwifi/iwl-trans.h

index 4a5822c..6abb738 100644 (file)
@@ -1,6 +1,6 @@
 /* SPDX-License-Identifier: GPL-2.0 OR BSD-3-Clause */
 /*
- * Copyright (C) 2005-2014, 2018-2020 Intel Corporation
+ * Copyright (C) 2005-2014, 2018-2021 Intel Corporation
  * Copyright (C) 2013-2015 Intel Mobile Communications GmbH
  * Copyright (C) 2016-2017 Intel Deutschland GmbH
  */
@@ -1267,7 +1267,8 @@ static inline int iwl_trans_wait_tx_queues_empty(struct iwl_trans *trans,
        if (WARN_ON_ONCE(!trans->ops->wait_tx_queues_empty))
                return -ENOTSUPP;
 
-       if (WARN_ON_ONCE(trans->state != IWL_TRANS_FW_ALIVE)) {
+       /* No need to wait if the firmware is not alive */
+       if (trans->state != IWL_TRANS_FW_ALIVE) {
                IWL_ERR(trans, "%s bad state = %d\n", __func__, trans->state);
                return -EIO;
        }