[PATCH next] wifi: iwlwifi: Fix error code in iwl_op_mode_dvm_start()

Dan Carpenter posted 1 patch 3 months, 1 week ago
drivers/net/wireless/intel/iwlwifi/dvm/main.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
[PATCH next] wifi: iwlwifi: Fix error code in iwl_op_mode_dvm_start()
Posted by Dan Carpenter 3 months, 1 week ago
Preserve the error code if iwl_setup_deferred_work() fails.  The current
code returns ERR_PTR(0) (which is NULL) on this path.  I believe the
missing error code potentially leads to a use after free involving
debugfs.

Fixes: 90a0d9f33996 ("iwlwifi: Add missing check for alloc_ordered_workqueue")
Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
---
 drivers/net/wireless/intel/iwlwifi/dvm/main.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/wireless/intel/iwlwifi/dvm/main.c b/drivers/net/wireless/intel/iwlwifi/dvm/main.c
index e015b83bb6e9..2b4dbebc71c2 100644
--- a/drivers/net/wireless/intel/iwlwifi/dvm/main.c
+++ b/drivers/net/wireless/intel/iwlwifi/dvm/main.c
@@ -1467,7 +1467,8 @@ static struct iwl_op_mode *iwl_op_mode_dvm_start(struct iwl_trans *trans,
 	/********************
 	 * 6. Setup services
 	 ********************/
-	if (iwl_setup_deferred_work(priv))
+	err = iwl_setup_deferred_work(priv);
+	if (err)
 		goto out_uninit_drv;
 
 	iwl_setup_rx_handlers(priv);
-- 
2.47.2
RE: [PATCH next] wifi: iwlwifi: Fix error code in iwl_op_mode_dvm_start()
Posted by Korenblit, Miriam Rachel 3 months, 1 week ago
> Fixes: 90a0d9f33996 ("iwlwifi: Add missing check for alloc_ordered_workqueue")
> Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org>
> ---

FYI,
I'll squash it into the original commit ("iwlwifi: Add missing check for alloc_ordered_workqueue")

Miri