Skip to content

Commit 9fe21dc

Browse files
zhengchaoshaoKalle Valo
authored andcommitted
wifi: ipw2200: fix memory leak in ipw_wdev_init()
In the error path of ipw_wdev_init(), exception value is returned, and the memory applied for in the function is not released. Also the memory is not released in ipw_pci_probe(). As a result, memory leakage occurs. So memory release needs to be added to the error path of ipw_wdev_init(). Fixes: a3caa99 ("libipw: initiate cfg80211 API conversion (v2)") Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com> Signed-off-by: Kalle Valo <kvalo@kernel.org> Link: https://lore.kernel.org/r/20221209012422.182669-1-shaozhengchao@huawei.com
1 parent 45fc6d7 commit 9fe21dc

File tree

1 file changed

+7
-2
lines changed

1 file changed

+7
-2
lines changed

drivers/net/wireless/intel/ipw2x00/ipw2200.c

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -11383,9 +11383,14 @@ static int ipw_wdev_init(struct net_device *dev)
1138311383
set_wiphy_dev(wdev->wiphy, &priv->pci_dev->dev);
1138411384

1138511385
/* With that information in place, we can now register the wiphy... */
11386-
if (wiphy_register(wdev->wiphy))
11387-
rc = -EIO;
11386+
rc = wiphy_register(wdev->wiphy);
11387+
if (rc)
11388+
goto out;
11389+
11390+
return 0;
1138811391
out:
11392+
kfree(priv->ieee->a_band.channels);
11393+
kfree(priv->ieee->bg_band.channels);
1138911394
return rc;
1139011395
}
1139111396

0 commit comments

Comments
 (0)