From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 24E193DFC9E; Sat, 28 Feb 2026 17:41:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772300471; cv=none; b=YZzLHD3u567qsfrTTCmNwrfHbhqdVkBtkRqkYfcTlD3HOWGkRXsKEL7R/lKR5K0extLvf5+5Fox6xT7FglLFsZTrYKzC9VXfL9xfI4kbIhRffswC6jroeqcfDKPyaxdKd76pmyLifcIE0OIspqjS/c3snsB3DbM/QrWhEmNeyLw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1772300471; c=relaxed/simple; bh=FcnjzuTrYxOdD1uVVsCw+4SQEAEj0Gn+2o0dyJvm8ks=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=GFW1pH9lqnmwKHFdu7mfQJ77SQz+cigRCmXE6IeR523GROUCPalxM02QLANoXVvbYlNvl18Jqz6doTpmPEe4C2R1dcaZ06dax9zrK5cNxfj/qGWKbG7SfN1Bg7t6WZedmhr5xEa4mQEmulQWdKiXgLNizVKMEtA0qj5/Sg/HP3k= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=VTUpppNz; arc=none smtp.client-ip=10.30.226.201 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="VTUpppNz" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 05A52C116D0; Sat, 28 Feb 2026 17:41:09 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1772300470; bh=FcnjzuTrYxOdD1uVVsCw+4SQEAEj0Gn+2o0dyJvm8ks=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=VTUpppNzrXu8qIFRoaduKrzyPvZRjKrQj5G4nguGS+UIx/h5JxQN1wRncKQuuVGjb bDMpczKnUGJqH/a2Qbk1EY6I8JcneXKVMX1S3pcOK9vUuMYZ959U76KmqOCjjdTSKZ FXUY/wRnJz21gKhoPLQu6TGSwAkrvfxIq564gWnCrMYnilDR+9b7my0PCaMDRntsM2 xicmO1LtQiZsO98ZR3KQmI4dInpl3VYyXeaeYrztAHevaZRhZpxWpnHnrG5cvzq3jG TY3uBijT2+GHBahYmsy0eXJ0mAy3rQbaP5yL8LrurCxE5ENHNjxvRIKiRJHesP2QdE JLZUOI1Vs9sFA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Johan Hovold , Yong Wu , Miaoqian Lin , Krzysztof Kozlowski , Sasha Levin Subject: [PATCH 6.19 509/844] memory: mtk-smi: fix device leaks on common probe Date: Sat, 28 Feb 2026 12:27:02 -0500 Message-ID: <20260228173244.1509663-510-sashal@kernel.org> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20260228173244.1509663-1-sashal@kernel.org> References: <20260228173244.1509663-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: stable@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit From: Johan Hovold [ Upstream commit 6cfa038bddd710f544076ea2ef7792fc82fbedd6 ] Make sure to drop the reference taken when looking up the SMI device during common probe on late probe failure (e.g. probe deferral) and on driver unbind. Fixes: 47404757702e ("memory: mtk-smi: Add device link for smi-sub-common") Fixes: 038ae37c510f ("memory: mtk-smi: add missing put_device() call in mtk_smi_device_link_common") Cc: stable@vger.kernel.org # 5.16: 038ae37c510f Cc: stable@vger.kernel.org # 5.16 Cc: Yong Wu Cc: Miaoqian Lin Signed-off-by: Johan Hovold Link: https://patch.msgid.link/20251121164624.13685-2-johan@kernel.org Signed-off-by: Krzysztof Kozlowski Signed-off-by: Sasha Levin --- drivers/memory/mtk-smi.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/memory/mtk-smi.c b/drivers/memory/mtk-smi.c index 733e22f695ab7..dd6150d200e89 100644 --- a/drivers/memory/mtk-smi.c +++ b/drivers/memory/mtk-smi.c @@ -674,6 +674,7 @@ static int mtk_smi_larb_probe(struct platform_device *pdev) err_pm_disable: pm_runtime_disable(dev); device_link_remove(dev, larb->smi_common_dev); + put_device(larb->smi_common_dev); return ret; } @@ -917,6 +918,7 @@ static void mtk_smi_common_remove(struct platform_device *pdev) if (common->plat->type == MTK_SMI_GEN2_SUB_COMM) device_link_remove(&pdev->dev, common->smi_common_dev); pm_runtime_disable(&pdev->dev); + put_device(common->smi_common_dev); } static int __maybe_unused mtk_smi_common_resume(struct device *dev) -- 2.51.0