Skip to contentSkip to conversation

brcmfmac: uninitialized variable in brcmf_fw_get_firmwares()

PATCH In review Dan Carpenter 2 participants 2 messages Aug 4, 2021

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 brcmfmac: uninitialized variable in brcmf_fw_get_firmwares()

The "ret" variable is used without being initialized when "alt_path" is false.

Fixes 5ff013914c62 ("brcmfmac: firmware: Allow per-board firmware binaries")
---
 drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/net/wireless/broadcom/brcm80211/brcmfmac/firmware.c +1 -1
index adfdfc654b10..4f387e868120 100644
@@ -680,7 +680,7 @@ int brcmf_fw_get_firmwares(struct device *dev, struct brcmf_fw_request *req,
 	struct brcmf_fw_item *first = &req->items[0];
 	struct brcmf_fw *fwctx;
 	char *alt_path;
-	int ret;
+	int ret = 0;
 
 	brcmf_dbg(TRACE, "enter: dev=%s\n", dev_name(dev));
 	if (!fw_cb)
Signature · 1 line
2.20.1
#1 lore raw
Quoted 5 lines · Dan Carpenter

The "ret" variable is used without being initialized when "alt_path" is false.

Fixes 5ff013914c62 ("brcmfmac: firmware: Allow per-board firmware binaries")

Thanks Dan!

But yesterday I sent another patch which incidentally fixes this too:
https://lore.kernel.org/linux-wireless/[email protected]/T/#u

As you can see in the last hunk of that patch ret is now unconditionally assigned on both forks of the if/else-clause.

Yours,
Linus Walleij