]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
wifi: mac80211: fix memory leak in ieee80211_if_add()
authorZhengchao Shao <shaozhengchao@huawei.com>
Thu, 17 Nov 2022 06:45:00 +0000 (14:45 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:32:20 +0000 (13:32 +0100)
[ Upstream commit 13e5afd3d773c6fc6ca2b89027befaaaa1ea7293 ]

When register_netdevice() failed in ieee80211_if_add(), ndev->tstats
isn't released. Fix it.

Fixes: 5a490510ba5f ("mac80211: use per-CPU TX/RX statistics")
Signed-off-by: Zhengchao Shao <shaozhengchao@huawei.com>
Link: https://lore.kernel.org/r/20221117064500.319983-1-shaozhengchao@huawei.com
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
net/mac80211/iface.c

index dd9ac1f7d2ea6771ac4328a36e1dece4c29b30b4..46f08ec5ed7606bd886fd76fd650a2b35d2370ce 100644 (file)
@@ -2258,6 +2258,7 @@ int ieee80211_if_add(struct ieee80211_local *local, const char *name,
 
                ret = cfg80211_register_netdevice(ndev);
                if (ret) {
+                       ieee80211_if_free(ndev);
                        free_netdev(ndev);
                        return ret;
                }