aboutsummaryrefslogtreecommitdiff
path: root/drivers/net/wireless/intel/iwlwifi/fw
diff options
context:
space:
mode:
authorGravatar Mordechay Goodstein <mordechay.goodstein@intel.com> 2022-03-04 13:21:26 +0200
committerGravatar Luca Coelho <luciano.coelho@intel.com> 2022-03-10 09:23:29 +0200
commitf0c163382cd2497348c9212f5d3b87754ed33a7b (patch)
tree016a84ab4952fcd5e5212978991a761148b66fe5 /drivers/net/wireless/intel/iwlwifi/fw
parentiwlwifi: use 4k queue size for Bz A-step (diff)
downloadlinux-f0c163382cd2497348c9212f5d3b87754ed33a7b.tar.gz
linux-f0c163382cd2497348c9212f5d3b87754ed33a7b.tar.bz2
linux-f0c163382cd2497348c9212f5d3b87754ed33a7b.zip
iwlwifi: dbg: in sync mode don't call schedule
Today in the code we have two options for collecting data sync/schedule, the two options call the same function and can lead to racing in free resources after done. So we call only one of two sync/schedule, and in case of sync only call sync function without also schedule to immediately run as a side job. Signed-off-by: Mordechay Goodstein <mordechay.goodstein@intel.com> Signed-off-by: Luca Coelho <luciano.coelho@intel.com> Link: https://lore.kernel.org/r/iwlwifi.20220304131517.88574097ce1b.I1b42297619d638d677a2300ed9a95105c1262101@changeid Signed-off-by: Luca Coelho <luciano.coelho@intel.com>
Diffstat (limited to 'drivers/net/wireless/intel/iwlwifi/fw')
-rw-r--r--drivers/net/wireless/intel/iwlwifi/fw/dbg.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/net/wireless/intel/iwlwifi/fw/dbg.c b/drivers/net/wireless/intel/iwlwifi/fw/dbg.c
index 53f0fe77aa10..d3ac8ea049a4 100644
--- a/drivers/net/wireless/intel/iwlwifi/fw/dbg.c
+++ b/drivers/net/wireless/intel/iwlwifi/fw/dbg.c
@@ -2992,10 +2992,10 @@ int iwl_fw_dbg_ini_collect(struct iwl_fw_runtime *fwrt,
"WRT: Collecting data: ini trigger %d fired (delay=%dms).\n",
tp_id, (u32)(delay / USEC_PER_MSEC));
- schedule_delayed_work(&fwrt->dump.wks[idx].wk, usecs_to_jiffies(delay));
-
if (sync)
iwl_fw_dbg_collect_sync(fwrt, idx);
+ else
+ schedule_delayed_work(&fwrt->dump.wks[idx].wk, usecs_to_jiffies(delay));
return 0;
}