]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
wifi: rtlwifi: pci: wait for firmware loading before releasing memory
authorThadeu Lima de Souza Cascardo <cascardo@igalia.com>
Fri, 6 Dec 2024 17:37:13 +0000 (14:37 -0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 13 Mar 2025 11:49:55 +0000 (12:49 +0100)
[ Upstream commit b59b86c5d08be7d761c04affcbcec8184738c200 ]

At probe error path, the firmware loading work may have already been
queued. In such a case, it will try to access memory allocated by the probe
function, which is about to be released. In such paths, wait for the
firmware worker to finish before releasing memory.

Fixes: 3d86b93064c7 ("rtlwifi: Fix PCI probe error path orphaned memory")
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@igalia.com>
Signed-off-by: Ping-Ke Shih <pkshih@realtek.com>
Link: https://patch.msgid.link/20241206173713.3222187-5-cascardo@igalia.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/wireless/realtek/rtlwifi/pci.c

index 5b0a5a22d06d20bcf062a3e0c25e47c2f475ceff..925e4f807eb9f1340626c07736683349107459c4 100644 (file)
@@ -2220,6 +2220,7 @@ fail5:
 fail4:
        rtl_deinit_core(hw);
 fail3:
+       wait_for_completion(&rtlpriv->firmware_loading_complete);
        rtlpriv->cfg->ops->deinit_sw_vars(hw);
 
 fail2: