From d07dadd199a2d154a5dd6bcf3c4e6ea7824b4744 Mon Sep 17 00:00:00 2001 From: Yao Kai Date: Sun, 28 Sep 2025 15:57:08 +0800 Subject: [PATCH] wifi: mac80211: fix memory leak in ieee80211_if_add() mainline inclusion from mainline-v6.6-rc1 commit 13e5afd3d773c6fc6ca2b89027befaaaa1ea7293 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/ICY4FT CVE: CVE-2022-50290 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=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 Link: https://lore.kernel.org/r/20221117064500.319983-1-shaozhengchao@huawei.com Signed-off-by: Johannes Berg Conflicts: net/mac80211/iface.c [Yao Kai: context conflict] Signed-off-by: Yao Kai --- net/mac80211/iface.c | 1 + 1 file changed, 1 insertion(+) diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c index 080f6ff98ce4..28d1a1450d24 100644 --- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c @@ -1882,6 +1882,7 @@ int ieee80211_if_add(struct ieee80211_local *local, const char *name, ret = register_netdevice(ndev); if (ret) { + ieee80211_if_free(ndev); free_netdev(ndev); return ret; } -- Gitee