2024-04-24 17:48:13

by Ben Greear

[permalink] [raw]
Subject: [PATCH] wifi: iwlwifi: Use request_module_nowait

From: Ben Greear <[email protected]>

This appears to work around a deadlock regression that came in
with the LED merge in 6.9.

The deadlock happens on my system with 24 iwlwifi radios, so maybe
it something like all worker threads are busy and some work that needs
to complete cannot complete.

For reference, see mail to lkml with subject
"6.9.0-rc2+ kernel hangs on boot (bisected, maybe LED related)"

Fixes: f5c31bcf604d ("Merge tag 'leds-next-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds")

Signed-off-by: Ben Greear <[email protected]>
---
drivers/net/wireless/intel/iwlwifi/iwl-drv.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
index 4696d73c8971..993177e1de27 100644
--- a/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
+++ b/drivers/net/wireless/intel/iwlwifi/iwl-drv.c
@@ -1744,7 +1744,7 @@ static void iwl_req_fw_callback(const struct firmware *ucode_raw, void *context)
* or hangs loading.
*/
if (load_module)
- request_module("%s", op->name);
+ request_module_nowait("%s", op->name);
failure = false;
goto free;

--
2.42.0



2024-04-25 20:38:25

by Johannes Berg

[permalink] [raw]
Subject: Re: [PATCH] wifi: iwlwifi: Use request_module_nowait

On Wed, 2024-04-24 at 10:47 -0700, [email protected] wrote:
> From: Ben Greear <[email protected]>
>
> This appears to work around a deadlock regression that came in
> with the LED merge in 6.9.
>
> The deadlock happens on my system with 24 iwlwifi radios, so maybe
> it something like all worker threads are busy and some work that needs
> to complete cannot complete.
>
> For reference, see mail to lkml with subject
> "6.9.0-rc2+ kernel hangs on boot (bisected, maybe LED related)"

You should use a Link: tag with a lore link for that :)

> Fixes: f5c31bcf604d ("Merge tag 'leds-next-6.9' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds")
>
> Signed-off-by: Ben Greear <[email protected]>

And no blank lines between tags, please.

johannes