From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (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 D54F7471417; Tue, 21 Jul 2026 20:11:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784664680; cv=none; b=ZgC+KGlZLntECsMyE9EBcK9oJVmp4/gJW9mAK6F+mdDtuC3j8kusDjOlfZpEmLKeqsy6w5QG+d7VqW3/SwVw65xZq3hRE9h180n+wSMJf4AWnpHk0/LX3WuOxotD1Sfw4524t3jJZuwFJeexVaLuoXfobTP6KkpZw3nydMj/FAQ= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784664680; c=relaxed/simple; bh=i3P1Xfrl5u1aaP2ybiWWL748+hc4OgbFa7HcSVHaX9M=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=bdaitq7iZpPiho0qcBQGELCOGdGiwdLtoEV93XSPrtNNG2dvs+HJshpFgjCqeIF31EECc98Di71zSXiXj1pGvlg+Xv1GAeqLoQv6NnvasOABvxY5Wz0bNF79s99CTD9yDfdN1lqAmccLo9OObXm/gas5uQ9dcZ1AxC96ip2ag7c= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=XkNbe0Hs; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="XkNbe0Hs" Received: by smtp.kernel.org (Postfix) with ESMTPSA id 476FC1F000E9; Tue, 21 Jul 2026 20:11:17 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linuxfoundation.org; s=korg; t=1784664677; bh=yzlJYWGBLiIMho3WqUbrf10W0r+DeELfiwlyeFae61Y=; h=From:To:Cc:Subject:Date:In-Reply-To:References; b=XkNbe0HsQD4HlmiwHRnQXK5q8GoiflcUndYqb4RFV0tH0r2TCiYGC68fyDYOW26r4 tC7TReaJ8FlnYGe4epZjSTJNXHIFziOpdQUOndCOtID/MEEDB0R9NxDnnBHE5RHWiV LqvLeWpdaJF65OIxqEasr8hGCdgamfjwvJV4TpOo= From: Greg Kroah-Hartman To: stable@vger.kernel.org Cc: Greg Kroah-Hartman , patches@lists.linux.dev, Dmitry Baryshkov , Mukesh Ojha , Bjorn Andersson , Srinivas Kandagatla , Sasha Levin Subject: [PATCH 6.6 0018/1266] slimbus: qcom-ngd-ctrl: Correct PDR and SSR cleanup ownership Date: Tue, 21 Jul 2026 17:07:35 +0200 Message-ID: <20260721152442.195719323@linuxfoundation.org> X-Mailer: git-send-email 2.55.0 In-Reply-To: <20260721152441.786066624@linuxfoundation.org> References: <20260721152441.786066624@linuxfoundation.org> User-Agent: quilt/0.69 X-stable: review X-Patchwork-Hint: ignore Precedence: bulk X-Mailing-List: patches@lists.linux.dev List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit 6.6-stable review patch. If anyone has any objections, please let me know. ------------------ From: Bjorn Andersson [ Upstream commit 960b53a3f76fa214c2fc493734ae7b3c5e713bbf ] PDR and SSR callbacks are registred from the controller probe function, but currently released from the child device's remove function. The remove() function should only be unwinding what was done in the same device's probe() function. Fixes: 917809e2280b ("slimbus: ngd: Add qcom SLIMBus NGD driver") Cc: stable@vger.kernel.org Reviewed-by: Dmitry Baryshkov Reviewed-by: Mukesh Ojha Signed-off-by: Bjorn Andersson Signed-off-by: Srinivas Kandagatla Link: https://patch.msgid.link/20260530204421.116824-5-srini@kernel.org Signed-off-by: Greg Kroah-Hartman Signed-off-by: Sasha Levin --- drivers/slimbus/qcom-ngd-ctrl.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/slimbus/qcom-ngd-ctrl.c b/drivers/slimbus/qcom-ngd-ctrl.c index 6a3c1cf06b81a3..12643aaf164268 100644 --- a/drivers/slimbus/qcom-ngd-ctrl.c +++ b/drivers/slimbus/qcom-ngd-ctrl.c @@ -1686,6 +1686,9 @@ static int qcom_slim_ngd_ctrl_remove(struct platform_device *pdev) { struct qcom_slim_ngd_ctrl *ctrl = platform_get_drvdata(pdev); + pdr_handle_release(ctrl->pdr); + qcom_unregister_ssr_notifier(ctrl->notifier, &ctrl->nb); + qcom_slim_ngd_unregister(ctrl); return 0; @@ -1697,8 +1700,6 @@ static int qcom_slim_ngd_remove(struct platform_device *pdev) pm_runtime_dont_use_autosuspend(&pdev->dev); pm_runtime_disable(&pdev->dev); - pdr_handle_release(ctrl->pdr); - qcom_unregister_ssr_notifier(ctrl->notifier, &ctrl->nb); qcom_slim_ngd_enable(ctrl, false); qcom_slim_ngd_exit_dma(ctrl); qcom_slim_ngd_qmi_svc_event_deinit(&ctrl->qmi); -- 2.53.0