2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-25 21:54:06 +08:00

brcmfmac: Fix a memory leak in error handling path in 'brcmf_cfg80211_attach'

If 'wiphy_new()' fails, we leak 'ops'. Add a new label in the error
handling path to free it in such a case.

Cc: stable@vger.kernel.org
Fixes: 5c22fb8510 ("brcmfmac: add wowl gtk rekeying offload support")
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Kalle Valo <kvalo@codeaurora.org>
This commit is contained in:
Christophe Jaillet 2017-06-21 07:45:53 +02:00 committed by Kalle Valo
parent dca2307ed6
commit 57c00f2fac

View File

@ -6862,7 +6862,7 @@ struct brcmf_cfg80211_info *brcmf_cfg80211_attach(struct brcmf_pub *drvr,
wiphy = wiphy_new(ops, sizeof(struct brcmf_cfg80211_info)); wiphy = wiphy_new(ops, sizeof(struct brcmf_cfg80211_info));
if (!wiphy) { if (!wiphy) {
brcmf_err("Could not allocate wiphy device\n"); brcmf_err("Could not allocate wiphy device\n");
return NULL; goto ops_out;
} }
memcpy(wiphy->perm_addr, drvr->mac, ETH_ALEN); memcpy(wiphy->perm_addr, drvr->mac, ETH_ALEN);
set_wiphy_dev(wiphy, busdev); set_wiphy_dev(wiphy, busdev);
@ -7013,6 +7013,7 @@ priv_out:
ifp->vif = NULL; ifp->vif = NULL;
wiphy_out: wiphy_out:
brcmf_free_wiphy(wiphy); brcmf_free_wiphy(wiphy);
ops_out:
kfree(ops); kfree(ops);
return NULL; return NULL;
} }