From nobody Fri Jul 24 22:57:06 2026 Received: from mail-pf1-f173.google.com (mail-pf1-f173.google.com [209.85.210.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 3F204370ADF for ; Wed, 22 Jul 2026 12:12:44 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784722366; cv=none; b=Z4ACNJFcw3T68lNd3swXQROon0i3ypyMppxGesYHCt8TLIvgzAywKqOxe+4BNmw0tO1bFBXYFyhLPD/WfV5VTUpovl6UJbpjWlE3iXR7wzs+7vHgPx4JJw/CZL5C2Nz6EuRCH23QGlIWSqp17DZzxV0IX1GB13VIEc+jY98NPLU= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784722366; c=relaxed/simple; bh=79j7NnDjv0QihjdfhzUpWvNFrgM+H6kwI0tyHE/S/UI=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=Y+vFxhhn0GthukLCG+FKMaSTbDxBHUSRJigQrpX+VRz1ZwUxWQkF0EQah6wz1LD0bHiOGbfEaYDdwuxZWLZsE7nkaG/qkw2kHwnBbC1dJhzAJjkkQXjrM7KgnN7jhMPJyQFvLz6EPdQOPlwZST8xvodijgRcYG8QqqxulzHoD/I= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=cse.iitm.ac.in; spf=pass smtp.mailfrom=cse.iitm.ac.in; dkim=pass (2048-bit key) header.d=cse-iitm-ac-in.20251104.gappssmtp.com header.i=@cse-iitm-ac-in.20251104.gappssmtp.com header.b=SlGU3Cqk; arc=none smtp.client-ip=209.85.210.173 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=cse.iitm.ac.in Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=cse.iitm.ac.in Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=cse-iitm-ac-in.20251104.gappssmtp.com header.i=@cse-iitm-ac-in.20251104.gappssmtp.com header.b="SlGU3Cqk" Received: by mail-pf1-f173.google.com with SMTP id d2e1a72fcca58-8453427d3f4so11646042b3a.3 for ; Wed, 22 Jul 2026 05:12:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cse-iitm-ac-in.20251104.gappssmtp.com; s=20251104; t=1784722364; x=1785327164; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=fHYM3ypwNgSEsVx6UcghJ4+KBn7vHb7BLLcIj3NJUsk=; b=SlGU3CqksJg3LxVsi+nxHv8sxnQpEwiv9+Y5xp4ofUPM+SjmiXbhzdEN3eoOlJ+5M8 guUcnA8ztpiPUrn1CVvkDGnZQj4VDuyhOcPLobRSDprOrrij0lMet5u5AHyEsSmuMAZr otrAr0560Sr3IcJUkd6qZ4zibcZ1vDHRXmThKdVRIbNwSBc+WrUC3MgEK/PeSVyPBrhm E6A0qp2j6I7GrZjO1VD4GNJd6v3wr6500klIVLgcE4p2W+InyqXXFz1kwH6gawIuNcxC k4bNpcSxe+melEFNfo3QBpYewkVuPCp7H3Ib9b8XCluDgMxyRpN42AzqO+y+Rk1cBHu3 c9ig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784722364; x=1785327164; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=fHYM3ypwNgSEsVx6UcghJ4+KBn7vHb7BLLcIj3NJUsk=; b=UoK70HiQ9QPcaGpyx7KaH3zb6IRshC5J7CLa6g1kny63hbo2IXjRvFlCwepC5ryhj8 ySoxwukJLBNbsa3IXdMc9fu8AQ470d1s5kC9vAZ/eT88OXYwXjX1m3yWNz5EW3K+POtb Ft8scQVoufwKC9luNYxoaVcONSmEFoi+gpjE7QycoubgnNu7oAB5nfNlQRhYV3cleZ2y SL4MlhYtmuV1gFQp8+QnOTV5Q+wyeWHwGo5WfnHmApHD+enXlcA0yfNPJ2TLWWQF9/5b cjCeO6wzquMHf775bi7qwrfoavq7LyZ1gqcE2XO8d5bSe+d0Q+Ekx5/Uu6w/qe/eunBZ PSiQ== X-Forwarded-Encrypted: i=1; AHgh+RpIKHa1KJRiLUCKNv3j0aCEL8eFEdY0lsfzORLSFjTafQp5ozF1YqsW2a/gfMTBQIlUO4sh5Y+kyXOHkOY=@vger.kernel.org X-Gm-Message-State: AOJu0YxiZzS4x4BXGG6LXSqcI8P8WjoLuCGzP5YFxMpkZBOXpPF/34T1 nrKxmpN24tAAUGCaOCqB5v+RnTBPTJsxRzccv59BlVQB9iKxjm2he6FJOJYjQ55rfiY= X-Gm-Gg: AR+sD10+fGsSxjsnvrjOHTvroRHnkv0OTfZM5UEPSUvs/oe7jCgUrckPUaLtvWdocfn 7ptnW3xIsgxGAfoyKXEKa127ITCGlw2z9ybzE/wHBThPdELE2heObXU7u632z1G+EijwYCfaYeJ gqEJkfVmtpXPBIfZQqvb7KzLqcy9wRD4RRboEbH447QjoC5AYhLMHenB9wCqtFaWJAY4jjo5v+c LsCmi/nXhskCNM33RM/0ZjZMhJ4a892zrRtYnodtqAoBJj3TFZwg050OGAtBeKbra5vE+gqHv5N bQEuG05J6Qu7CeYykUoJbcHrVGAhSSI91F4OAuCEP2Mh2fiOjg+ApYFWX40FnjsCnwJlWanUTUE 6eJNExR6fpAp2KiN+DDldxKiTJmzE+9Z0EJ5OHVH0l8cpwRm1IwoD5/ePEia8VrpTILAw7O2XYx 2rb1wLXoetSrKzk4Q+9J1lfGXduzYNDGyH9QWBvBXSF5VvyCDvlg1WkPNMldC5e6rFPFxW/f7M4 +c2S+JNPVptZRMZuqaBgZvlISvv6XaTlT8eBZuYRgc= X-Received: by 2002:a05:6a00:a10:b0:847:926c:582c with SMTP id d2e1a72fcca58-84c292bc6aemr24736309b3a.29.1784722363558; Wed, 22 Jul 2026 05:12:43 -0700 (PDT) Received: from Metius.iitm.ac.in ([103.158.43.43]) by smtp.googlemail.com with ESMTPSA id d2e1a72fcca58-84e1757488csm1205304b3a.33.2026.07.22.05.12.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 22 Jul 2026 05:12:42 -0700 (PDT) From: Abdun Nihaal To: pkshih@realtek.com Cc: Abdun Nihaal , linux-wireless@vger.kernel.org, linux-kernel@vger.kernel.org, stable@vger.kernel.org Subject: [PATCH] wifi: rtlwifi: rtl8192du: Fix possible memory leak in rtl92du_init_sw_vars() Date: Wed, 22 Jul 2026 17:42:35 +0530 Message-ID: <20260722121236.136754-1-nihaal@cse.iitm.ac.in> X-Mailer: git-send-email 2.43.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" The memory allocated inside rtl92du_init_shared_data() is not freed in any of the subsequent error paths in rtl92du_init_sw_vars(). Fix that by adding a call to rtl92du_deinit_shared_data() in the error path. Fixes: b5dc8873b6ff ("wifi: rtlwifi: Add rtl8192du/sw.c") Cc: stable@vger.kernel.org Signed-off-by: Abdun Nihaal --- Compile tested only. Issue found with static analysis. .../net/wireless/realtek/rtlwifi/rtl8192du/sw.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/drivers/net/wireless/realtek/rtlwifi/rtl8192du/sw.c b/drivers/= net/wireless/realtek/rtlwifi/rtl8192du/sw.c index 7bafb051d5ec..c7eab3382b73 100644 --- a/drivers/net/wireless/realtek/rtlwifi/rtl8192du/sw.c +++ b/drivers/net/wireless/realtek/rtlwifi/rtl8192du/sw.c @@ -118,7 +118,7 @@ static int rtl92du_init_sw_vars(struct ieee80211_hw *hw) =20 err =3D rtl92du_init_shared_data(hw); if (err) - return err; + goto error; =20 rtlpriv->dm.dm_initialgain_enable =3D true; rtlpriv->dm.dm_flag =3D 0; @@ -145,8 +145,10 @@ static int rtl92du_init_sw_vars(struct ieee80211_hw *h= w) =20 /* for firmware buf */ rtlpriv->rtlhal.pfirmware =3D kmalloc(0x8000, GFP_KERNEL); - if (!rtlpriv->rtlhal.pfirmware) - return -ENOMEM; + if (!rtlpriv->rtlhal.pfirmware) { + err =3D -ENOMEM; + goto error; + } =20 rtlpriv->max_fw_size =3D 0x8000; pr_info("Driver for Realtek RTL8192DU WLAN interface\n"); @@ -160,10 +162,14 @@ static int rtl92du_init_sw_vars(struct ieee80211_hw *= hw) pr_err("Failed to request firmware!\n"); kfree(rtlpriv->rtlhal.pfirmware); rtlpriv->rtlhal.pfirmware =3D NULL; - return err; + goto error; } =20 return 0; + +error: + rtl92du_deinit_shared_data(hw); + return err; } =20 static void rtl92du_deinit_sw_vars(struct ieee80211_hw *hw) --=20 2.43.0