From: Miaoqian Lin Date: Mon, 27 Oct 2025 06:06:01 +0000 (+0800) Subject: slimbus: ngd: Fix reference count leak in qcom_slim_ngd_notify_slaves X-Git-Tag: v6.18~9^2~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=96cf8500934e0ce2a6c486f1dbc3b1fff12f7a5e;p=thirdparty%2Fkernel%2Fstable.git slimbus: ngd: Fix reference count leak in qcom_slim_ngd_notify_slaves The function qcom_slim_ngd_notify_slaves() calls of_slim_get_device() which internally uses device_find_child() to obtain a device reference. According to the device_find_child() documentation, the caller must drop the reference with put_device() after use. Found via static analysis and this is similar to commit 4e65bda8273c ("ASoC: wcd934x: fix error handling in wcd934x_codec_parse_data()") Fixes: 917809e2280b ("slimbus: ngd: Add qcom SLIMBus NGD driver") Cc: stable Signed-off-by: Miaoqian Lin Reviewed-by: Dmitry Baryshkov Link: https://patch.msgid.link/20251027060601.33228-1-linmq006@gmail.com Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/slimbus/qcom-ngd-ctrl.c b/drivers/slimbus/qcom-ngd-ctrl.c index 4fb66986cc22e..cd40ab839c541 100644 --- a/drivers/slimbus/qcom-ngd-ctrl.c +++ b/drivers/slimbus/qcom-ngd-ctrl.c @@ -1241,6 +1241,7 @@ static void qcom_slim_ngd_notify_slaves(struct qcom_slim_ngd_ctrl *ctrl) if (slim_get_logical_addr(sbdev)) dev_err(ctrl->dev, "Failed to get logical address\n"); + put_device(&sbdev->dev); } }