From nobody Thu Apr 9 08:10:18 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 B2D253C6A44 for ; Tue, 10 Mar 2026 04:09:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115759; cv=none; b=GqOO8zcO9Cs6jbnN6CJ7YrnWMyupF6bjOS5CZWiOk38YPYJZ+f++sDetXbaZWVBEVEfQii/bBp4u7+i4c0PxBDdKM5Sbn9PA8JKiZFQN8P2V5RUm1sZGDWqmLAHnAJsf3iPB6wQtXsHzhzgKnD6bz+Al7MN2OMgCr521eG3tsBM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115759; c=relaxed/simple; bh=3Cb5y1P/EwWDNdjU8vL9LecqHowixFacmPbBDFJoYGs=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=fPlYftO5w9XpU6k6EZPaJsXqiMwVyVSswMAD+Dti30RmjvR1VEJH22QNDEt9d+yqLFBJNxZiEH3/mAMSw7jpvjsIpUdmxIS8Ks44Qs0bF8kdbee0bWnV06L/LCoD3uvMo91k4dea3DAf7eju/nsvhVxANw0A+4rDscUaIo2tX5M= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=CDj7FyQr; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=OKI0yQ9p; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="CDj7FyQr"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="OKI0yQ9p" Received: from pps.filterd (m0279869.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62A2EM4P110866 for ; Tue, 10 Mar 2026 04:09:16 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= e//oRhmp8fUgAIO1Epz+iBv98UyMhnprwAdMQTvXFJo=; b=CDj7FyQrVDr2WR5y njY4P9bVuHGyEG6rjCTheF3/wmF3jSw9cb4g+mZQuo6VfZFOeP07w2K7y1zUUcbb e+yOA05L86RPnGCDVhJiXzN94vC8AEuweLFfsRwHjZU+TVnv1tNB3pbVdq0Ek/xA gIhzQwGqL7NcSs3LkUZYZ3qgZg4mezLOzyxQ4gGp5Z1ItqQHo9YeHawKKoRHnYmP sh2WpqcSumF1HNMzKX54+h86GMXgGqqKl0OMTwLx1++ehEPriZ6tz4frcOJptibP 45x+rKi7yrpFBsEMvx+ye8XLDNT/nDMTtUp9g/ZiWcnmMAB9W1cMN8OLZ7jzIt0d q3d6Jg== Received: from mail-oa1-f70.google.com (mail-oa1-f70.google.com [209.85.160.70]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4csv5ub683-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 10 Mar 2026 04:09:16 +0000 (GMT) Received: by mail-oa1-f70.google.com with SMTP id 586e51a60fabf-4170466438dso10292025fac.2 for ; Mon, 09 Mar 2026 21:09:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773115756; x=1773720556; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=e//oRhmp8fUgAIO1Epz+iBv98UyMhnprwAdMQTvXFJo=; b=OKI0yQ9p3Qmvk93RsHFdnaNxZUa33siAos3DyufaSq5tqif50I+np5TIWenlphC4SH bjjf+nGgc6Yv6QdLAc+jfV+lugGC8/rdamIZhUQ03WLKFR90FuQTf/sgQ7tQT5mEK0M7 Pq/TSLET/ui2bulysnZfXoHUxt7EYJ1dmaEid2LfLMrqGZK4UssEkLaWB3apLe2STcEK PAnsaA1qPl6rGG+mieypVCiq1J5BZCph/ABsCcu58gAQlyuVo38C2bBWPrV15hUxqCRv UU8jl+MrrlafSjtji7iUC1hx8q3PQRPOS7lZtl8aLnyCmL/4gXubDovbEJ3dRecjLkyd H3YA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773115756; x=1773720556; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=e//oRhmp8fUgAIO1Epz+iBv98UyMhnprwAdMQTvXFJo=; b=IiVq03Kv/k7jhp09jHzg7bQLEfS/JY+5HYMShTJxMx6/vNrRSzeH5RCSjhRxbDw2SG OJ7A2M1lZfir2yIm64TAMh5uffPKzOq7nGJu5MdYqhtKFDZT5q2TfLoWqlwb1OCKFlKR twC3Xo5auAX+f9SY36t0yQNnli3WnQ3XlCTgv2uWynUfUrXpdr3Ssgg7Gf5TzAh8nyom 2qkIKoAkmVZfij6U6WT6hm0buXeD//lNzSChoIRiYMRogvGotnnJJw6jZui3RlaDupyr UxdsmSHVe2y39ltdGqUlAQ3UUSuX1IQO7PCj58yINZTPYJeI/2BAdH6MgsJzdKj/I5Pb fGUw== X-Forwarded-Encrypted: i=1; AJvYcCUiHvDzvNmsUtQcQKiWenZ07zCTIueKrWrCZlGd/cNcCHRjCVIn9RTOZr5UMay3AnEAmPGvTFmMM4NWB8M=@vger.kernel.org X-Gm-Message-State: AOJu0YzhMt8S7SBpRPuDSvHsaYuXuQOZB2a95HExoDpgUE0tBMNaaPD9 GaGuqk/oCTzO84tYvM02nWDxBfpBRqrlzkHVC6GuE4s6F8tYe+cNLPL+zPG44slD4fgbf0TKc9I Smwm0WeYPQl88pwpwXbg4nU0qxE5nQ/9OlMnZ9joXpOmt7y0jvazhiZDr7qXX3SQx41M= X-Gm-Gg: ATEYQzxNpMtxlWTBmTmC+8UQVOfwnQdFIiMStUHV4AiL8k48yTOwiH9H4rHr61tZu0O uY76kXbp9AVolcPgqpQWw3uJK+dNhWVr6yx2gfP3C6eEbRzDLNTZibTWu6eD5BCZ7wL0dlrgV2D y2BTnboiTabnnaXkyW6jpfTQ1UIYax7/BkMFQEZxn+rcKTSLiw5gyheE3Pkfhbk0wflU2GQTSmK P0YM3kk7nT5c6hpxKuqsu+yvtj7ris5ap1y6kaH+sPT4dfag/MIukLggs1e5aioRB5N4L7w54fD SjDGE8Z4Q0ySVKSy93Iy/LoZVkUnOK3M3sBodnJJFTMyhiqXo40yn1deIYxpWNdKG6f9NS9WInl 5/bX0IJWFiJ57/CBdMeZ4pnJque5ss+4bppjmxMHOkQo= X-Received: by 2002:a05:6870:b288:b0:3ec:3685:34a1 with SMTP id 586e51a60fabf-416e406f8fbmr7071900fac.25.1773115756090; Mon, 09 Mar 2026 21:09:16 -0700 (PDT) X-Received: by 2002:a05:6870:b288:b0:3ec:3685:34a1 with SMTP id 586e51a60fabf-416e406f8fbmr7071893fac.25.1773115755618; Mon, 09 Mar 2026 21:09:15 -0700 (PDT) Received: from [192.168.86.59] ([104.57.184.186]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-41756e24c39sm1595685fac.20.2026.03.09.21.09.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Mar 2026 21:09:14 -0700 (PDT) From: Bjorn Andersson Date: Mon, 09 Mar 2026 23:09:02 -0500 Subject: [PATCH 1/7] slimbus: qcom-ngd-ctrl: Fix up platform_driver registration Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260309-slim-ngd-dev-v1-1-5843e3ed62a3@oss.qualcomm.com> References: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> In-Reply-To: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> To: Srinivas Kandagatla , Greg Kroah-Hartman , Vinod Koul , Krzysztof Kozlowski Cc: linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Bjorn Andersson , stable@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2709; i=bjorn.andersson@oss.qualcomm.com; h=from:subject:message-id; bh=3Cb5y1P/EwWDNdjU8vL9LecqHowixFacmPbBDFJoYGs=; b=owEBgwJ8/ZANAwAKAQsfOT8Nma3FAcsmYgBpr5loy7yRVecGED9eETlNTSgHoISRiezX5TjFr rLQI7M+i0CJAkkEAAEKADMWIQQF3gPMXzXqTwlm1SULHzk/DZmtxQUCaa+ZaBUcYW5kZXJzc29u QGtlcm5lbC5vcmcACgkQCx85Pw2ZrcXL5hAAmPbhESMgQoZmt+1S7TaqAJrYaWBb7gOkLbPPcgs +8KONegyxNwiLPc8IvU8V6ZUs7I5MzRfZWsDfBrWI5WVgF8L9FLMdXuHcLZ6e1hgG4yPq7ECYc8 7qxDLRSjI9YsuEtXTU3jxRMHsvYZlm3nU7uh9JNItsEsj3VmOjg7ATlvsWfy95AFHY5iSgUvLi+ pyydiZqe3ofnMeRlCToAoclOU9MUZNB96gXQXchesPl8QVpkuml9BsMewvZExM08JCl3b8IYic9 9lXaAxDvsor+55N2AXRV5ySfloEFrN3f5tpAQTOkjbQ0LOjEFbgcy6wbDCBjp99ITnPNnmcvzrZ /RwIf4kmuu+o0WVcjLt8BqrCs8Eq/cSel/GB+tqC6z9ZLE7Fdflyx7j+OGUSSbFL1WtEeWtnhTw odH1sBOUv5KX0MYG/j6Ti1RqZwAiWxANw7O6VgtJWUQytgRGWi0hp8NfVfRiDmrNswsSBbPcR5h 4DNb5ROyx9NzoOHqWRWxPJ5qrgKDuJd4dblA0ni9+YU4SYgioL8G4nfdwEE66Fg/1Oh5UhhJ262 YX4S7e5kxhjJ8b+LZQ9XfjgJq5acT7sBJlJ0IOPk+92PdDjzVxTZ0Bxo0PDgkm9Buo/IL06DmbF 13/HOyDDA5lkU16l6ZHmv5ycf0wpl8ihf2M0VQENOyCI= X-Developer-Key: i=bjorn.andersson@oss.qualcomm.com; a=openpgp; fpr=05DE03CC5F35EA4F0966D5250B1F393F0D99ADC5 X-Proofpoint-GUID: BOKi74wdbGXEg1kTLLDeOt1SPN95e_5x X-Proofpoint-ORIG-GUID: BOKi74wdbGXEg1kTLLDeOt1SPN95e_5x X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzEwMDAzMSBTYWx0ZWRfX7OqbJLCRDxOW 98ZDooh1vdvSsEuG7+lQjPF3eb8hVGilO5uosrmLRbwIB+bkceJLy6LDV1Yy+pPhDKj0CyrNYEs epQPXldtYzWAdi6xaEQ484aRGuim8bsb4ML8hQG9lyS8XwdS5gMoTB8D50Z1cXOFFQGq0OvuKMo 6xmd7cW0jQQC2+S2jApej5e3KAM+tvgrEUBDULe49bJJhGnTuQNeK0yCCCFlAmIFty0D3UI0CKO QzOY7hNRVwf4G0Scoa/XU3VLP+P/hpYFJSfOuyNIRDpHuhRPXbB72JUmJia4HkODaZLpznwpOCU hedNOiRWv+rovLwDO02/DsCcB4oGpmEij+cKCI+Gan746QGmaG1hUNwbdY543CQ6eWqnzTJttcj Z2I9rhiVa39A7aKapOyuV2kfhwRHCp5EiPKNkg95hcogvv1DoFCa/gvRnv9ulW7bRpeWlI/QXrG pWMqJmy3NBCgIVnd7UQ== X-Authority-Analysis: v=2.4 cv=Xr/3+FF9 c=1 sm=1 tr=0 ts=69af996c cx=c_pps a=nSjmGuzVYOmhOUYzIAhsAg==:117 a=DaeiM5VmU20ml6RIjrOvYw==:17 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_glEPmIy2e8OvE2BGh3C:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=EWo_CA4GmUQ_SZ-sejQA:9 a=QEXdDO2ut3YA:10 a=1zu1i0D7hVQfj8NKfPKu:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-10_01,2026-03-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0 spamscore=0 impostorscore=0 suspectscore=0 lowpriorityscore=0 clxscore=1015 phishscore=0 priorityscore=1501 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2603100031 Device drivers should not invoke platform_driver_register()/unregister() in their probe and remove paths. They should further not rely on platform_driver_unregister() as their only means of "deleting" their child devices. Introduce a helper to unregister the child device and move the platform_driver_register()/unregister() to module_init()/exit(). Fixes: 917809e2280b ("slimbus: ngd: Add qcom SLIMBus NGD driver") Cc: stable@vger.kernel.org Signed-off-by: Bjorn Andersson Reviewed-by: Dmitry Baryshkov Reviewed-by: Mukesh Ojha --- drivers/slimbus/qcom-ngd-ctrl.c | 36 +++++++++++++++++++++++++++++++++--- 1 file changed, 33 insertions(+), 3 deletions(-) diff --git a/drivers/slimbus/qcom-ngd-ctrl.c b/drivers/slimbus/qcom-ngd-ctr= l.c index 9aa7218b4e8d2b350835626839371ed6e19860e2..c69656a0ef1766d5a9df40bdf37= bae8f64789fab 100644 --- a/drivers/slimbus/qcom-ngd-ctrl.c +++ b/drivers/slimbus/qcom-ngd-ctrl.c @@ -1562,6 +1562,13 @@ static int of_qcom_slim_ngd_register(struct device *= parent, return -ENODEV; } =20 +static void qcom_slim_ngd_unregister(struct qcom_slim_ngd_ctrl *ctrl) +{ + struct qcom_slim_ngd *ngd =3D ctrl->ngd; + + platform_device_del(ngd->pdev); +} + static int qcom_slim_ngd_probe(struct platform_device *pdev) { struct device *dev =3D &pdev->dev; @@ -1664,7 +1671,6 @@ static int qcom_slim_ngd_ctrl_probe(struct platform_d= evice *pdev) goto err_pdr_lookup; } =20 - platform_driver_register(&qcom_slim_ngd_driver); return of_qcom_slim_ngd_register(dev, ctrl); =20 err_pdr_alloc: @@ -1678,7 +1684,9 @@ static int qcom_slim_ngd_ctrl_probe(struct platform_d= evice *pdev) =20 static void qcom_slim_ngd_ctrl_remove(struct platform_device *pdev) { - platform_driver_unregister(&qcom_slim_ngd_driver); + struct qcom_slim_ngd_ctrl *ctrl =3D platform_get_drvdata(pdev); + + qcom_slim_ngd_unregister(ctrl); } =20 static void qcom_slim_ngd_remove(struct platform_device *pdev) @@ -1754,6 +1762,28 @@ static struct platform_driver qcom_slim_ngd_driver = =3D { }, }; =20 -module_platform_driver(qcom_slim_ngd_ctrl_driver); +static int qcom_slim_ngd_init(void) +{ + int ret; + + ret =3D platform_driver_register(&qcom_slim_ngd_ctrl_driver); + if (ret) + return ret; + + ret =3D platform_driver_register(&qcom_slim_ngd_driver); + if (ret) + platform_driver_unregister(&qcom_slim_ngd_ctrl_driver); + + return ret; +} + +static void qcom_slim_ngd_exit(void) +{ + platform_driver_unregister(&qcom_slim_ngd_driver); + platform_driver_unregister(&qcom_slim_ngd_ctrl_driver); +} + +module_init(qcom_slim_ngd_init); +module_exit(qcom_slim_ngd_exit); MODULE_LICENSE("GPL v2"); MODULE_DESCRIPTION("Qualcomm SLIMBus NGD controller"); --=20 2.51.0 From nobody Thu Apr 9 08:10:18 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 E93C73CB2F1 for ; Tue, 10 Mar 2026 04:09:18 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115760; cv=none; b=kQ2exIHgXhUYA66bmcI8BHPpjP/cm4cyGSbeX4Y/+hRCGtC1VAfX1jAzvfwISJrIUj3A7b/NMxMAsElfFCgD/IK2Kd9LHwjre6l4ovDZ5ClpocokwPXrDnCU0/FYSpmz93IVULfkr/JI1XLx33WDB1ETIrX/eoCkvX76TdSZzpA= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115760; c=relaxed/simple; bh=D7RSg4l0xMBxXV15aj1igeBvh6Yp99FxN4zSXnETrEI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=CsUE7R9pXsNF+3npW+nip+XNggAyXRnR+NQKnk0wsC2XA811Qu+FqSw6ftnNDZQpelvle5BswJdSRkTrNLfviJRSNPozHf76YIQBoL61GCtH2h0OsxSlp94lc3Im2q+7LxjxWusBzZlghxteQnjITdCzYlOt8K0QbCHoFJ+hiXg= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=LpCd0CYZ; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=bsVqlvbD; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="LpCd0CYZ"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="bsVqlvbD" Received: from pps.filterd (m0279868.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62A2EZKF1900137 for ; Tue, 10 Mar 2026 04:09:18 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= IUB4/DuDC1wDE2keWJkPB0qFs6Egwe4FX8Up3irNpes=; b=LpCd0CYZdTjKwucw o+bM8TVWH0NMf5JqcorJ1K34tQKIi3EC5j/935sYAh6dJ4arNkJyJ1+SESXbuvzt RcwiQsNM4cGeTvWt97rrZGB940U1A7uyGUG7A58g0WZ+BYsvT2uVNxWTLc1mwN0A PkUhLYgiFvxaR1qohYZ/r+Qe3tJr2I6344/6sg3czjvumqa/whhXYiPbhBeFZZz4 3BD8XpkADQv5Ab+4pmywo1i2jVetbNLVmaS3bWm1lc0xx03VlDINjiUrfwYFD4Lh cKjkCAJClXjy1unPb5bkR4WLSQzjA2029WOgI5EO6sZUERFvyLvqPg7VcHvMx5qh /Nk9ug== Received: from mail-oa1-f72.google.com (mail-oa1-f72.google.com [209.85.160.72]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4cstsabk56-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 10 Mar 2026 04:09:17 +0000 (GMT) Received: by mail-oa1-f72.google.com with SMTP id 586e51a60fabf-40ef793e45eso27466460fac.3 for ; Mon, 09 Mar 2026 21:09:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773115757; x=1773720557; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=IUB4/DuDC1wDE2keWJkPB0qFs6Egwe4FX8Up3irNpes=; b=bsVqlvbDzRWGeTE+3huvv0Se01F0k3IL+zHMHrU3o7fzruaG8iqzMrPe2sTaeCLDvu 6rkX6C7S3E3fWxZrnfQvmDVYuJVE2NLJQ0J3eJn6XmbYtmruK1FPB79+1uuVKpQMAvUo 5/5Ye2FzZX2LIwhqnS2iD4HlqP2OzMBzZDXMA/VvOfqf7ku8gWB2rylVevGWkkDANPll 7gYoasEykHewcPbksCH6VJJoLOt8Vz/prk+hxxivGJ4mLYdLUTHiGUhOpOAgGOkAm6Vs yBlUcl4EW4VSC6l5nUQ2S6jTVXADz/znqQh4T/biNWHzIWYsUm6bsDmpc0dIbhhqFshv hT9w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773115757; x=1773720557; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=IUB4/DuDC1wDE2keWJkPB0qFs6Egwe4FX8Up3irNpes=; b=TpiQx8sA1CFsPE6Tn6aSmyP9uy5cwV9+ns5lpVbs2VS8iUyRA9FzcpqiUT+tBikXt1 6KZ0BE2LaxLdplCHkiuru7L+5BIYuKmXgfkkP7K0jSzKqZwondeQvMPri6cYGagUeixk xj6V3hjbNNkSgdhNXvzk9V0jKam76Yx1vzIQoANMZtSCNCyRlmxE87fe0OioFw9BBdYx DnyR+dZ/rI6QuBhHvlzVDorTdBFiMmPgY5Ht++XES9xv8ZoZlLEchcdgCZt8odaxCPlb QebOkDak4dPETDbjgdgA5ND1wAVydGkeD668tTYABwalK8v93V3W/BWjV0OOjKKRkarJ iU0A== X-Forwarded-Encrypted: i=1; AJvYcCWP88/SvgaaZ1+FLM0vULdM6rvytID+KAzt308sPCAy093l5FK1xtFgOnzTL8ueubLjjnZ47MkcSINKYhk=@vger.kernel.org X-Gm-Message-State: AOJu0YxDyupyVdRu2cVbfV1hcMWuirZhdKg/q0/Muy3bt/qQVGgDjLsj rdz+3gRvZ2KW05OasyQhfq6b8lPL/MkQ6boyyy/cK2H/TMU1N6xL1/QLHsJ3iM0/C7RDaxJdtQY PnGHmYJHWDvXFvkJAOKwKulzX6u917Bw3jBF60yIB6xK7OKp6HEZF6sR7hyzEsw5zbXM= X-Gm-Gg: ATEYQzwAQGAfARNXuFKXp9VKFdIE8p1E2h0gjHKU/Oa1ZFrDtQERsaIRHqE+6S12L1n BnkxM7T/RCo4mVgossHx125y9L87uWKp7BBBLEhaB9Ahkf+T4iQ6cz1Bf50oof1JTAH8u5jqeBE PotimePh36M0EdJiu3IVdV/xzNSXOhZMC7qoopHbGddN1qnBcdp2dqV6+WYaW2tI6PxSWGu0VMM p4whMY1w1Qw0aVuUZ+qA9s1KMux2jFym4ucmwjEI+QJyGhj4kzY7I/ZAP6q4MgO5xNNz7oz8d60 kM+vRJ+eSFSnEERmWBFBDibRk/2LpjE1nzhgoP2vWyNJs8k4F3Zh/ARDzQesVeipm/TOxf++xKx 9NIE/QelpwIJRrqeTY3hvpM0zX34HGpsoGLPoxHsXsD8= X-Received: by 2002:a05:6870:2154:b0:40e:a338:c8a1 with SMTP id 586e51a60fabf-416e3eac7b6mr8389215fac.11.1773115757320; Mon, 09 Mar 2026 21:09:17 -0700 (PDT) X-Received: by 2002:a05:6870:2154:b0:40e:a338:c8a1 with SMTP id 586e51a60fabf-416e3eac7b6mr8389204fac.11.1773115756943; Mon, 09 Mar 2026 21:09:16 -0700 (PDT) Received: from [192.168.86.59] ([104.57.184.186]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-41756e24c39sm1595685fac.20.2026.03.09.21.09.15 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Mar 2026 21:09:16 -0700 (PDT) From: Bjorn Andersson Date: Mon, 09 Mar 2026 23:09:03 -0500 Subject: [PATCH 2/7] slimbus: qcom-ngd-ctrl: Fix probe error path ordering Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260309-slim-ngd-dev-v1-2-5843e3ed62a3@oss.qualcomm.com> References: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> In-Reply-To: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> To: Srinivas Kandagatla , Greg Kroah-Hartman , Vinod Koul , Krzysztof Kozlowski Cc: linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Bjorn Andersson , stable@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1558; i=bjorn.andersson@oss.qualcomm.com; h=from:subject:message-id; bh=D7RSg4l0xMBxXV15aj1igeBvh6Yp99FxN4zSXnETrEI=; b=owEBgwJ8/ZANAwAKAQsfOT8Nma3FAcsmYgBpr5lpYvZ+ct4IErTPa9Ur2dZl9HwXHOifOnPpm stchtoirQWJAkkEAAEKADMWIQQF3gPMXzXqTwlm1SULHzk/DZmtxQUCaa+ZaRUcYW5kZXJzc29u QGtlcm5lbC5vcmcACgkQCx85Pw2ZrcUXTg/9G/PF5Gf2GSGQAlgzaO6XaXLSu+bf4rEzzYhXY2w z2kzQotKhcaGy57uXKawzo7hFMqeWhkfzdiCLvEksEG37vyJWF7avc2ucCx8UfYKn6e4vmiaOj3 oe2RkUcVq41+ZxQoAt7TTlo1bQyrjrYc7CLVv9P0ev/2WvCJ0nWx1Gd2llYFCYFzA+w3dhuexjF +ZMka3Fz1n0uSIesEFyhii4hpz10Glfe4YVEQeT/oT6rClqpuQIU9wwl9IebSRN7Xr0sSJ/F7v+ L6foAuYjH+XOxY+C1nNp+/ByYjXDsKkNfYB9FAeW8T7djBhmBxlm40oogjXFI7YgBPplJ4QVEXc rcEydODoIrLyMN1CgLHQao9SEa5k0Q4hC3j/6nAl/bWRXZlGpCPOLkTn+2m+9/wPqGOuoe5RpXt ggQgZycSARoWjBfJsbcc4i2PFj4Ep4fAW4mojnOG69bazCvDmi4xx4D5o/kp73e7vVH7J1XFbEl WRT0pARwX9+wcT/5gYnDyCF4FCx/rnMrw0Ck2NgF79Qdl9wXVyoXd1G5zi83f3e+7XxYD5UlNde vb4eI8d9+Y5Mk0f+hClophVqvIzXjd35E2d9pvhoqZl7qMwgSjWC0k6qObCN4maBXyE5Q25JYbs NuXt+llpUKl2QickmZ+VYBLKZPa3dCvlDM1YxtnOg5m8= X-Developer-Key: i=bjorn.andersson@oss.qualcomm.com; a=openpgp; fpr=05DE03CC5F35EA4F0966D5250B1F393F0D99ADC5 X-Proofpoint-GUID: UFXHYqAJs2E8HBMV8ES7rer2222G2b8W X-Authority-Analysis: v=2.4 cv=I+Vohdgg c=1 sm=1 tr=0 ts=69af996d cx=c_pps a=Z3eh007fzM5o9awBa1HkYQ==:117 a=DaeiM5VmU20ml6RIjrOvYw==:17 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=ZpdpYltYx_vBUK5n70dp:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=v7zRpcr-n2crOtZbBgkA:9 a=QEXdDO2ut3YA:10 a=eBU8X_Hb5SQ8N-bgNfv4:22 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzEwMDAzMSBTYWx0ZWRfXxnjqCYpDJQn+ I1bGLmuvXi3FKjaWLr2XQt+YcGnau2fLNYKTxYH43L1zzkUpcQ8Zx6ZGsbuq+kX33cR1ESsFlfP OWX0OXXV8bbBqcqJ6QyJzy6SurhdEdPgNti5wgqGr/7td2zgApUqcQ+aqwJafBhJX6drqokLz6Q vUeo3s7se4Q5m8XYVBic3T7aFYD+iRexETIn98D6UhCnGX0dbhshReZlOLZS2cCi68ZTYeRRK5z s3Zfa025JrHj/UVAwrhOJWn5wsAhbIp3lumHrsiSrJD881Lt/pPa+MBgBZ+iAHFV1M+wLn+pReI JIHAqJzTe3wnX+x4Fzc2zQ6/Ix75iFjdfSaiRgQbIrwHpLZpfGESDB4Z8da00kWZdHxURh70DpG wUs80v1QQiLC/e2I3R6oB7M0Exw6LQCtARdVHfR+8wqgfgweiVxE0GG20Ym0H3zo+cyey4EuJOb VAjpn7DwmY018tOpztw== X-Proofpoint-ORIG-GUID: UFXHYqAJs2E8HBMV8ES7rer2222G2b8W X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-10_01,2026-03-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 phishscore=0 impostorscore=0 spamscore=0 malwarescore=0 suspectscore=0 bulkscore=0 lowpriorityscore=0 clxscore=1015 priorityscore=1501 adultscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2603100031 qcom_slim_ngd_ctrl_probe() first registers the SSR callback then allocates the PDR context, as such the error path needs to come in opposite order to allow us to unroll each step. Fixes: 16f14551d0df ("slimbus: qcom-ngd: cleanup in probe error path") Cc: stable@vger.kernel.org Signed-off-by: Bjorn Andersson Reviewed-by: Dmitry Baryshkov Reviewed-by: Mukesh Ojha --- drivers/slimbus/qcom-ngd-ctrl.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/slimbus/qcom-ngd-ctrl.c b/drivers/slimbus/qcom-ngd-ctr= l.c index c69656a0ef1766d5a9df40bdf37bae8f64789fab..b34e727bab086c95dc7e760bf11= 41baac9ccf6a7 100644 --- a/drivers/slimbus/qcom-ngd-ctrl.c +++ b/drivers/slimbus/qcom-ngd-ctrl.c @@ -1662,22 +1662,21 @@ static int qcom_slim_ngd_ctrl_probe(struct platform= _device *pdev) if (IS_ERR(ctrl->pdr)) { ret =3D dev_err_probe(dev, PTR_ERR(ctrl->pdr), "Failed to init PDR handle\n"); - goto err_pdr_alloc; + goto err_unregister_ssr; } =20 pds =3D pdr_add_lookup(ctrl->pdr, "avs/audio", "msm/adsp/audio_pd"); if (IS_ERR(pds) && PTR_ERR(pds) !=3D -EALREADY) { ret =3D dev_err_probe(dev, PTR_ERR(pds), "pdr add lookup failed\n"); - goto err_pdr_lookup; + goto err_pdr_release; } =20 return of_qcom_slim_ngd_register(dev, ctrl); =20 -err_pdr_alloc: - qcom_unregister_ssr_notifier(ctrl->notifier, &ctrl->nb); - -err_pdr_lookup: +err_pdr_release: pdr_handle_release(ctrl->pdr); +err_unregister_ssr: + qcom_unregister_ssr_notifier(ctrl->notifier, &ctrl->nb); =20 return ret; } --=20 2.51.0 From nobody Thu Apr 9 08:10:18 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 D37043CA4BE for ; Tue, 10 Mar 2026 04:09:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115762; cv=none; b=HQKtwsyy/j3gxA9FcUflShupVWmuRPSBkulUNKSdvXmrL6ndFA0/+nKUG3W2HtKaadBnYgjPDPFdRTZwTj2hm35ADoshS+qjAm1feFtGdz295mkaoyebe7OwapTNy4eHRkxQS1VCFyYcrng2QRPaSgTlQqztnaInZdIOeII4Fww= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115762; c=relaxed/simple; bh=uTr8Ave//isAJhHfIzcKDULVkXYMBNmtFbD/mSWV4fI=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=nATlAyrdpBHynFg1/ztafWFyDR/aBkCgE7qZBK85oHdzpF/7MRhR8U7BNL28fNHxjU4aJK5D42M6bYkRZomCj1fXojMMQJlV891ytoy81H5ZcWQLrp+z6mBnob82TpQGa7B6sy4t2lRtyETSb10Y3j3TbdD2uPiXdheDlvlSnC8= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=Pkf4ppJ8; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=LMCxunJe; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="Pkf4ppJ8"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="LMCxunJe" Received: from pps.filterd (m0279869.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62A2En9r111299 for ; Tue, 10 Mar 2026 04:09:19 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= X4n7Cm+zIgSF9DXpgX4rOaED2hMX3L5ub7hq9cR6BPw=; b=Pkf4ppJ80/hN3+D2 VXLAXWbkYELxbtichDrCeSbTxPVvJ/rd3y95oG3HT8wHAB2n4/XtWqRWLIpSAjCp yDLZDXKVWwEIPgTQjRkVdKBjtnLyEG6sqq2kn1Dzb6/tG5Else7k437mDeUI397n 4S85VPDYEMakSQz+GpMCHIhUc5mqTeXJe/TUWxTRpVklV6kPCiF9NLCEdnUuYD3g vtqvTEVVvJwvEoYY/3NrrREprpHEqedu14EDRQJrn3+rLMkZrgtY53wKwrcz+8ty 9DOvZs88IAa1QlPOyiGghwKvSfzsJYcBt9goPyXaH/7qw48rfAFGiWflBNX7KGxu uN8Mjw== Received: from mail-oa1-f72.google.com (mail-oa1-f72.google.com [209.85.160.72]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4csv5ub688-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 10 Mar 2026 04:09:18 +0000 (GMT) Received: by mail-oa1-f72.google.com with SMTP id 586e51a60fabf-40f09403c56so50861860fac.1 for ; Mon, 09 Mar 2026 21:09:18 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773115758; x=1773720558; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=X4n7Cm+zIgSF9DXpgX4rOaED2hMX3L5ub7hq9cR6BPw=; b=LMCxunJe27DjtQe9lgwT5SNn5uE3pQKCdafc5gorSt8GLoj8b3JpVXKHv+G6fPn+30 cgv8cZI6g/Pxw47hc9LKXqbn4QJm+JEAiifV8cHbBsboFoV/q7ysXJ4VPolnW31tmyQn huQuCsQhnAgQRHPnQdEObMAjFGTCRZNTKaAoxFmBTVqlIyWIik+OUDmMVT0PPFD/zCxY 2m+j0Qr2FnV+QBAYKUY8hiGY8Tfq4D1Dqzh4m6QX8R43folaRY917N3qBdQt5bVpCUbu myK6kzzlx0hoAVblWfQGcZXl2xszeWocLWmpKDWPsYc2ALTX6j0wsj+giW/TE/b5NmKF yEIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773115758; x=1773720558; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=X4n7Cm+zIgSF9DXpgX4rOaED2hMX3L5ub7hq9cR6BPw=; b=RnYrofqX9I3FO/qsLDSCibyHur6bZIfT+QXqipbdR9GRircwL7lVxOcOZBKdUvYJu2 bXREI6ONJsMuwesZacFz/uhNIVPCpham+ARF2jg9AnNRv5qBFN6ODC93R4xWwRyKIOHK /NW2tUMobIPcvqF3YFbDL5BMxzbtYd6RR3544pvdiIeUc5bYCxdqUx0ZxJYcMaVIDeDw /wfF8aec3CqoGEzSxdqvKLLaRoXFFyWsxc+0RbjoVRnQDQH3nZmvdmvXsuv/lEhK0oh0 rPPIL3P+j0A86TQ3S5AmX1jZiesguEr4KVcZpf2fcO1PSuA1IzH1/XCy7PazKOCFX6vo j7cA== X-Forwarded-Encrypted: i=1; AJvYcCXV2dG8UOkfXuvCWTUq07FsHUCIzmMa0ScGh3JBk2akZdk+GCyjyzAzEZHLtyTo+WCNUKFTNXbCvLKYmwQ=@vger.kernel.org X-Gm-Message-State: AOJu0YyTcxLcu8Shbh613SbEXWqnX7ejv0JV+sJ92qv4sl7Pwp+WbOX+ kzsz9ClDWgoJTAdHx9BGKhsi+GIF5+VOrgORqnVwjcsa2qhzNbIvCqV2priffoxWflcFKzpK59x 3QLfVrilrCHpqmhDThpqGtGQocHOrLCirhJB9eIZQoEVRPV6yZUJZqEzK7np01dovs8I= X-Gm-Gg: ATEYQzxcrr5HwcYq4WMGeyINwp21MWABqiLbdeRZg1zjRPM9LKIFgUtv1GjRsrfByAd CcpAcsLyif5+fTMCGOMl7no82S/6o5bD4zW5GeCDZKDRPogH74tFf2fLPtYUOJ9phU9vRIyjGxA gQ8RbGQ2kpaWQO1a7zqHpvINJiU+8Opp0fKSk0DuaqMDji5QzjQ/4m1pIyiPkLt5VGWKq/0AlqJ M4JSYsU5lTiPZ/JkXNSQy2k0HuIkQddRvHf/rmt0x3CMlMXfu8blToXtcYYXxYxTmqThs+Dk8fr zTbccVgFEdM5M95tzMkTgYUALps7E1wyX/HGzrJ8SRs8CeeKR4RzQYf/9+osZIC4edqmK/OIhAN 0EgPBmfJ4IZByOn16xQ2pK9ccwxj+Qly5efgN5wUAs+0= X-Received: by 2002:a05:6870:21cb:b0:409:7ba2:c5fb with SMTP id 586e51a60fabf-41756a7eb7cmr1267534fac.17.1773115758334; Mon, 09 Mar 2026 21:09:18 -0700 (PDT) X-Received: by 2002:a05:6870:21cb:b0:409:7ba2:c5fb with SMTP id 586e51a60fabf-41756a7eb7cmr1267520fac.17.1773115757967; Mon, 09 Mar 2026 21:09:17 -0700 (PDT) Received: from [192.168.86.59] ([104.57.184.186]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-41756e24c39sm1595685fac.20.2026.03.09.21.09.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Mar 2026 21:09:17 -0700 (PDT) From: Bjorn Andersson Date: Mon, 09 Mar 2026 23:09:04 -0500 Subject: [PATCH 3/7] slimbus: qcom-ngd-ctrl: Correct PDR and SSR cleanup ownership Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260309-slim-ngd-dev-v1-3-5843e3ed62a3@oss.qualcomm.com> References: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> In-Reply-To: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> To: Srinivas Kandagatla , Greg Kroah-Hartman , Vinod Koul , Krzysztof Kozlowski Cc: linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Bjorn Andersson , stable@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1557; i=bjorn.andersson@oss.qualcomm.com; h=from:subject:message-id; bh=uTr8Ave//isAJhHfIzcKDULVkXYMBNmtFbD/mSWV4fI=; b=owEBgwJ8/ZANAwAKAQsfOT8Nma3FAcsmYgBpr5lpHTscuk0HN9e86xo4yvw9zmInztm+IWgn5 ekAl1ly/CqJAkkEAAEKADMWIQQF3gPMXzXqTwlm1SULHzk/DZmtxQUCaa+ZaRUcYW5kZXJzc29u QGtlcm5lbC5vcmcACgkQCx85Pw2ZrcUBqhAAp5HJ3HE77j7SFIwR6eSX1rrYLjbZ7FQNtLoDyVm nGVZFsTgjK4L0YTpnTL88O2lAkJmsgwL/VkxTjI/Ord97RTXGTLYW2f7ekJH4k74RzZTPc4Bkss mkE1ma60Te5iPtqFTtP6qVpFJbrOIAswAl/LI7HwGOicQxWleT5CELlu87WnxY4As+wsYmFKaNP y0juECUpoNM8hZEne85QO1qbN9Iu3WMuCS0YMPHnWb/8rcyrVWIuXVIbz7T+dflxzxvxb19l32K AZFX5R9+f0AoBa6FDxbP7azp+BnxMwxC9eVdPGDPBGSeZJQ1m+qN8oefG4AbPfL91WTRh00X4qG A2JCG/cf/28JiZjcKePD7kxJY1Jjh96YhLb6yUIe5An2GHPxVZE7BoBWj+NyriOKn63jE/brdWT 6PaHN6Czyiwp4rZNG30cXDCHuqFVBLkdi49cmWFdj3VFR+W+ElfhDAx/1ZICEYueHf3IjNPwTg+ MNL/mzN86YkxAiN6P2KdJ0Vn1BMtRep0mLIcA2b7ITlkGSf0NXDuBZt8I8ximxJQM/SeSTTEAiU a/5gz2TSKne7thefnfm9llY3QWWGR9Qms/IBFB3nqhMghx3CWjXOUiqvAdxwpW8IK+SDdE4urLB j8FXUYZT4xhooNV8tXEtJf4fLrbCleEwbCPjCt5mqvt4= X-Developer-Key: i=bjorn.andersson@oss.qualcomm.com; a=openpgp; fpr=05DE03CC5F35EA4F0966D5250B1F393F0D99ADC5 X-Proofpoint-GUID: -0iHZTegYlkW6C1UVW0hjquqXZjaANxs X-Proofpoint-ORIG-GUID: -0iHZTegYlkW6C1UVW0hjquqXZjaANxs X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzEwMDAzMSBTYWx0ZWRfXzwwdz3gx4dQK jFKKO7A+Rp+s0uuVwLOHKWBNwhdsAS4ENKHp3U0kho4/ft/2Fsa053IrM2RBrRJnIT5j8d5gs+h hItBwmPN87xuvEPsc4P8f1lRF17cVz4nWw3Qsxi9WWj8G2R9nxOOREiS2tXO2yQ8e/vP9eNZhzr tjNIyaQwWQtE1J/60cCo2KtEtf8MaJ+RJtJjIakSUvwZUWY08BvEt17e3RkjbR3Yd8n8IM6r6vE TYndQERg5bX9Vl6PLC//wKLcdDgMRZiggirbAtfMmGHz4qA1JMNRsmyjaJX0aIdKAmwTNDSqIiR wV8LyIdEaAsAnKGKqJw15sbisGW/PORzHubcbbR+YLMoXE8TraKzzyAIKjV95jzCpO78g7bge3d W8Qf/hIrqrvbdaYwBnPuO01OEV8UI8muTaDKDGhdKUOO/MdbA+Mdwdrax4yYb5HiGDtYTXF5rc4 W40U0YkINIIsIM6p1ug== X-Authority-Analysis: v=2.4 cv=Xr/3+FF9 c=1 sm=1 tr=0 ts=69af996e cx=c_pps a=Z3eh007fzM5o9awBa1HkYQ==:117 a=DaeiM5VmU20ml6RIjrOvYw==:17 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=_glEPmIy2e8OvE2BGh3C:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=v7zRpcr-n2crOtZbBgkA:9 a=QEXdDO2ut3YA:10 a=eBU8X_Hb5SQ8N-bgNfv4:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-10_01,2026-03-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 adultscore=0 spamscore=0 impostorscore=0 suspectscore=0 lowpriorityscore=0 clxscore=1015 phishscore=0 priorityscore=1501 bulkscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2603100031 PDR and SSR callbacks are registred from the controller probe function, but currently released from the child device's remove function. In the next commit the controller probe function will be modified such that the error path will unregister the child device, resulting in a double free of these resources. Fixes: 917809e2280b ("slimbus: ngd: Add qcom SLIMBus NGD driver") Cc: stable@vger.kernel.org Signed-off-by: Bjorn Andersson Reviewed-by: Dmitry Baryshkov Reviewed-by: Mukesh Ojha --- 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-ctr= l.c index b34e727bab086c95dc7e760bf1141baac9ccf6a7..09ce3299e15c25b1b9cf6b15598= 50adf4aa20737 100644 --- a/drivers/slimbus/qcom-ngd-ctrl.c +++ b/drivers/slimbus/qcom-ngd-ctrl.c @@ -1685,6 +1685,9 @@ static void qcom_slim_ngd_ctrl_remove(struct platform= _device *pdev) { struct qcom_slim_ngd_ctrl *ctrl =3D platform_get_drvdata(pdev); =20 + pdr_handle_release(ctrl->pdr); + qcom_unregister_ssr_notifier(ctrl->notifier, &ctrl->nb); + qcom_slim_ngd_unregister(ctrl); } =20 @@ -1693,8 +1696,6 @@ static void qcom_slim_ngd_remove(struct platform_devi= ce *pdev) struct qcom_slim_ngd_ctrl *ctrl =3D platform_get_drvdata(pdev); =20 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); --=20 2.51.0 From nobody Thu Apr 9 08:10:18 2026 Received: from mx0b-0031df01.pphosted.com (mx0b-0031df01.pphosted.com [205.220.180.131]) (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 0F1333CC9E6 for ; Tue, 10 Mar 2026 04:09:20 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.180.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115762; cv=none; b=AgtFuwpWuuQhhxpoPjuva3VKe+ed6AQpe4lMCNOdsAobZtbQgdy0ycKFQf12SJi5RjcQ40jyd1k9Se/OFi6odNmY8fLrCohUsWHRBPYtvO2bT1XJTr5oAOdx+P14dHLHSiKTopNsHFW2mWe7FvtjuDQWtO8lEe9TSJFhjo+i8PM= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115762; c=relaxed/simple; bh=yHNRVHvntJT7Tx36zVXQ9h+CerzoqsLrT3e6rWQ+uvA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=LN8adQbveF/8+7KEh4AEO5Q6GSDw249JdTFXsu23G9SgiNt+cUWFl93tLCryeUSUr15kBbeGYOxcOrnOEEKx7bY0Tsd2C2dgrVuPQ7fcp9vCgxAX6dr+ysFcCSY1xIG3nfh+KTJ8K8FyQvOQaXm1Ihto/trLhsY+UvF+PrYoHH4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=l5wXBrjQ; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=ebzbju4S; arc=none smtp.client-ip=205.220.180.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="l5wXBrjQ"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="ebzbju4S" Received: from pps.filterd (m0279872.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62A2EPGn2817521 for ; Tue, 10 Mar 2026 04:09:20 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= pEqfmW8mEjrirhyyza0kcOBf3SgJNAje+F5NTIs4Z4o=; b=l5wXBrjQqyoBz3uU 6gf/eCMNp/mjGdVJ8KTy0Wvk5GkdlgcHtJW1Zl7kLdwkUl+u9gYrjT3BxgA1uGu+ hmfZNTfS15JdYBle4FKqZUBBHo9134xMioO9NNhjJAYLtC/eOYcK6HKDgmHXpQ8p rm7+zytQ9VvMIm8CNQXVHHjQBDanpP58fUjbES4MzAkGtzZPGVzovKILXsKTC/1W tk0ttfTVuVoU6Q4iSW/zwSARL9uCHFVXc83Ml+oprDz/8I4W6l8FoBjLif2dFQjp k4uZfGrlVIJkS/vJCS/1IbAvTiXfd8zPOuuyXU+MJ4Upd/+LHv3LAd+TTUvcHvwx iv50cg== Received: from mail-oa1-f69.google.com (mail-oa1-f69.google.com [209.85.160.69]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4csyr42dnm-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 10 Mar 2026 04:09:20 +0000 (GMT) Received: by mail-oa1-f69.google.com with SMTP id 586e51a60fabf-417573e447bso4161553fac.3 for ; Mon, 09 Mar 2026 21:09:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773115759; x=1773720559; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=pEqfmW8mEjrirhyyza0kcOBf3SgJNAje+F5NTIs4Z4o=; b=ebzbju4SqFP7TpK4FmpWjuVZm9Q/FawHMmP993ID3ihhQA5rFudzYyhus/QVcMMBU0 5GPHasC7svaKYkE//jtDW5853lcoghpqsiS/BSwKA11Rr9mtJnCAOQgVDGFNpdLwtFMg 20MJKzTwn6moPfRN5uScLyPbyJ5lp5193yWUUIS880UvKIaeNabm6uYxH6VLDiJ/jymx mR/8LU7oW5TQa/FkSK/Pr3Yx39N9CUxbQuzPm+W3v3DAq7u8pViBgBUeN/rpXfXvfzxM +21evcAkMNTELzmGK7oPv+yTfxdSHu+st9WbOEU1ttqK2gF2PYbd/mBbkBLelTNG+I77 8eUw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773115759; x=1773720559; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=pEqfmW8mEjrirhyyza0kcOBf3SgJNAje+F5NTIs4Z4o=; b=nedmwl7aGEzyZNuZCOeyu0KlNlZLdBg0mf43JF97IX1Y3hVicpFbuRYQhunycKIknJ SK04qQKBncf6Gq8QkuIHE/xvWWafkNuIuPsBNAnlywwlcLwbavAx6wfVfM5I/O9Vg4Vn b5oMLAvLmq/yfpOzGckzXpa9TDpP6plCV2M73RgQFFXO1juyPjRcRuBIfLLqQJmd0dMm h+BvmfNvfvJvpq1kDHQ0wkHwVAw4hPKElP3ccrM6TSrhtOGCHMUXb3o3jooEUj907E4U AGBE/MElN9KhbYhrEfzi18gMCm0Pt8ZsKCN8eyLIMQgUr4qDECMw4lGoj21EDAsy3s0N ZgGg== X-Forwarded-Encrypted: i=1; AJvYcCVZarF/VAdqfjni2uylutvaZ7zgwuJXQpECcblFLa65zDiRRBTau0mrpVg/HytLLsImPLdaCS80x7sBynI=@vger.kernel.org X-Gm-Message-State: AOJu0YyDVKMPtZGkrOpuE9xRPPBcyoODixdyHeFe+ZhtFfqMg9KcHf9f Fg/1UVNIxHhG3TAOUUP/ZCoqqh+AW9Rk5NAYErLMcmDyPcJ9DpSUKmfRZ9PZdNd8HKHDcpIMsRB 6tb/2v50A7ak8ZzV1IRs4xhgVIfHp6DouUe5IAtZ9a1ANwTJjcGFvwSJiwOch/JzLQLs= X-Gm-Gg: ATEYQzyBGhsGNC9I5EshZAJq/3Fa6RXOTgTe6UrToYcof3IVqxfR/6Aq4VwRy7SNG+f 0arjqePt+tXG/Hgu4/zR3dHPGSGZfzhq63xZRZOCCNfyWR1IvDREPsVaSnuUZ0lyMhU0AuNTEVd adex25nFQCRADa4ocTyjqmri0xPpfgMSgm+nk/scniFER8kNb2ZjO7z2K3dG9+uA4Z4zVc4WzNX x90STNnBRpeCpkxbj9g+BPqyAvuqumr2+/3qNFPLe3XZ/EB3c4kKriDxeHqQWoHZKKGXBrq1AGw uMDUBV5tEoDtjcU51wDV0hmKhaZNyS5KhuMPY1DtLUOMzrlbMAAvvUnAWQ2yAAoViJQ/QQPFHOm qc4pAKGx8yoYDUEFBctX5NCNX605wui1oorSqmrvpox4= X-Received: by 2002:a05:6871:56c1:b0:409:e3c4:6027 with SMTP id 586e51a60fabf-416e45d1749mr7785236fac.55.1773115759216; Mon, 09 Mar 2026 21:09:19 -0700 (PDT) X-Received: by 2002:a05:6871:56c1:b0:409:e3c4:6027 with SMTP id 586e51a60fabf-416e45d1749mr7785219fac.55.1773115758745; Mon, 09 Mar 2026 21:09:18 -0700 (PDT) Received: from [192.168.86.59] ([104.57.184.186]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-41756e24c39sm1595685fac.20.2026.03.09.21.09.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Mar 2026 21:09:18 -0700 (PDT) From: Bjorn Andersson Date: Mon, 09 Mar 2026 23:09:05 -0500 Subject: [PATCH 4/7] slimbus: qcom-ngd-ctrl: Register callbacks after creating the ngd Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260309-slim-ngd-dev-v1-4-5843e3ed62a3@oss.qualcomm.com> References: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> In-Reply-To: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> To: Srinivas Kandagatla , Greg Kroah-Hartman , Vinod Koul , Krzysztof Kozlowski Cc: linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Bjorn Andersson , stable@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=4532; i=bjorn.andersson@oss.qualcomm.com; h=from:subject:message-id; bh=yHNRVHvntJT7Tx36zVXQ9h+CerzoqsLrT3e6rWQ+uvA=; b=owEBgwJ8/ZANAwAKAQsfOT8Nma3FAcsmYgBpr5lpVAa+TCOg3EjuGeYS5AYt0paEICH4mxwWZ /SYhTOjjoGJAkkEAAEKADMWIQQF3gPMXzXqTwlm1SULHzk/DZmtxQUCaa+ZaRUcYW5kZXJzc29u QGtlcm5lbC5vcmcACgkQCx85Pw2ZrcW1Yg//c2ijG5PGehgPGqcoo93wCG32YQwPz9wBoF7H7Qf ySYaXYLQ3odq/bPzw7M4apMwn0Vb4JSElZlakBHLe0kpqqUhkJCn6RTpP+ThO0AdW4Vk+H377Xm V9K/tYLISYZ0fXdPqdgLqtUP2Z7WJ5bC0/prNEQJ4mYWx8y69rsM/RnQYrlxB+U4JxNz1fOEzR6 VxAhJrGTx6NWXJKxcZpOTNJuLGFmnn6x9PUwwid0GiHeiP4sWKOLdcSzzKS5ll65Zvhm1F3BkZT UFDw3cRNtyFbBPoV+OswTIRiaBMsJnyW/bpgZCPBHQbrrxZSnCKLKn7GzHCDGp2K8Kg+x+mQ1Q5 eFerFu8KkjO9JmjV1HBhk2PolKy3cJ5C3U/ePcmbN3O4Z/LRUUL/6Kwd4pE90HjE3X8xb0ekvPy Xfh7SRmxWL+hHkgImR2Sfjp7q6ykho97cz3/Ix+4OeH3P/UqYDUIidxJcaZ1ZjkJowmybXxmL1U Ln9hsbv0LhDaMghILgJyBgxlSV8FXoiE1bKCRu4Pl/E2CVgD1mAvs/v/RWD2JQw6TaTk4B6CV/9 EOR75En7FGN6KpqMPQTgauxtJ3BMcR+P+szTGmEasToaT3RYsw9d3sZISElPh4PHjvINVMWiY5a DxruBzZ/HN/9PQ45/tlS7Wjdf+yMeRnZP4wNgj/VGI58= X-Developer-Key: i=bjorn.andersson@oss.qualcomm.com; a=openpgp; fpr=05DE03CC5F35EA4F0966D5250B1F393F0D99ADC5 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzEwMDAzMSBTYWx0ZWRfXxrU8zDrwk9A7 hCKF1XdBn6CVd5E8c+rFAxIKMEV0N15ovgKJlk57BavBX4SQD/JEyB8DpyFuoPy6aD+ZhnQ5IBj QZI9/6p2a9OTLISQTve5JE7K/sAX2oiLFzb7HLpwhAcLL9JWEzf/hUxkyALeeCny4lnrrskw/Rm Ol44igoXRmBSGi612Auu7TYCftvwi+4QHncWpGH4wyaf+r/IHPizG8UhP1fUEldVaTtiyc78K53 YI7TNIAVA/3wOMaQwcFrlynGCh6dZexUH8mUVggCxgLpi3XKJt7lv0QEzmV5cyZK0Ww8tSwESb1 AV4CI+6yMARJMKHkvNkvvTpTD9313Xyhxhh/HEBmV698qr1BAPzht/7LhOFqNq9FvR/uMdc2EmC 1LBe8EcKQngwKGV7q+tDphaWxAbBBM2ZONoBzPWh18xDclG7nbcMWsEiOppxXwjAHYzZ9g3tvdd FzSobpBnc0nodaSoKtw== X-Proofpoint-GUID: 35QzT1-XVKiDE697ijMpyiBuBsOl54Yt X-Proofpoint-ORIG-GUID: 35QzT1-XVKiDE697ijMpyiBuBsOl54Yt X-Authority-Analysis: v=2.4 cv=KNRXzVFo c=1 sm=1 tr=0 ts=69af9970 cx=c_pps a=zPxD6eHSjdtQ/OcAcrOFGw==:117 a=DaeiM5VmU20ml6RIjrOvYw==:17 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yx91gb_oNiZeI1HMLzn7:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=YGvZ9ezxgrw7oyDE3t0A:9 a=QEXdDO2ut3YA:10 a=y8BKWJGFn5sdPF1Y92-H:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-10_01,2026-03-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 adultscore=0 impostorscore=0 spamscore=0 bulkscore=0 priorityscore=1501 suspectscore=0 clxscore=1015 lowpriorityscore=0 malwarescore=0 phishscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2603100031 When the remoteproc starts in parallel with the NGD driver being probed, or the remoteproc is already up when the PDR lookup is being registered, or in the theoretical event that we get an interrupt from the hardware, these callbacks will operate on uninitialized data. This result in issues to boot the affected boards. One such example can be seen in the following fault, where qcom_slim_ngd_ssr_pdr_notify() schedules work on the NULL ngd_up_work. [ 21.858578] ------------[ cut here ]------------ [ 21.858745] WARNING: kernel/workqueue.c:2338 at __queue_work+0x5e0/0x790= , CPU#2: kworker/2:2/116 ... [ 21.859251] Call trace: [ 21.859255] __queue_work+0x5e0/0x790 (P) [ 21.859265] queue_work_on+0x6c/0xf0 [ 21.859273] qcom_slim_ngd_ssr_pdr_notify+0x110/0x150 [slim_qcom_ngd_ctr= l] [ 21.859304] qcom_slim_ngd_ssr_notify+0x24/0x40 [slim_qcom_ngd_ctrl] [ 21.859318] notifier_call_chain+0xa4/0x230 [ 21.859329] srcu_notifier_call_chain+0x64/0xb8 [ 21.859338] ssr_notify_start+0x40/0x78 [qcom_common] [ 21.859355] rproc_start+0x130/0x230 [ 21.859367] rproc_boot+0x3d4/0x518 ... Move the three registrations of interrupts, SSR and PDR until after the NGD device has been registered. This could be further refined by moving initialization to the control driver probe and by removing the platform driver model from the picture. Fixes: 917809e2280b ("slimbus: ngd: Add qcom SLIMBus NGD driver") Cc: stable@vger.kernel.org Signed-off-by: Bjorn Andersson Reviewed-by: Mukesh Ojha --- drivers/slimbus/qcom-ngd-ctrl.c | 52 ++++++++++++++++++++++++-------------= ---- 1 file changed, 30 insertions(+), 22 deletions(-) diff --git a/drivers/slimbus/qcom-ngd-ctrl.c b/drivers/slimbus/qcom-ngd-ctr= l.c index 09ce3299e15c25b1b9cf6b1559850adf4aa20737..76944c515291a62fb9cb192bec5= cd5c2caa542f4 100644 --- a/drivers/slimbus/qcom-ngd-ctrl.c +++ b/drivers/slimbus/qcom-ngd-ctrl.c @@ -1613,6 +1613,7 @@ static int qcom_slim_ngd_ctrl_probe(struct platform_d= evice *pdev) struct qcom_slim_ngd_ctrl *ctrl; int ret; struct pdr_service *pds; + int irq; =20 ctrl =3D devm_kzalloc(dev, sizeof(*ctrl), GFP_KERNEL); if (!ctrl) @@ -1624,19 +1625,9 @@ static int qcom_slim_ngd_ctrl_probe(struct platform_= device *pdev) if (IS_ERR(ctrl->base)) return PTR_ERR(ctrl->base); =20 - ret =3D platform_get_irq(pdev, 0); - if (ret < 0) - return ret; - - ret =3D devm_request_irq(dev, ret, qcom_slim_ngd_interrupt, - IRQF_TRIGGER_HIGH, "slim-ngd", ctrl); - if (ret) - return dev_err_probe(&pdev->dev, ret, "request IRQ failed\n"); - - ctrl->nb.notifier_call =3D qcom_slim_ngd_ssr_notify; - ctrl->notifier =3D qcom_register_ssr_notifier("lpass", &ctrl->nb); - if (IS_ERR(ctrl->notifier)) - return PTR_ERR(ctrl->notifier); + irq =3D platform_get_irq(pdev, 0); + if (irq < 0) + return irq; =20 ctrl->dev =3D dev; ctrl->framer.rootfreq =3D SLIM_ROOT_FREQ >> 3; @@ -1659,24 +1650,41 @@ static int qcom_slim_ngd_ctrl_probe(struct platform= _device *pdev) init_completion(&ctrl->qmi_up); =20 ctrl->pdr =3D pdr_handle_alloc(slim_pd_status, ctrl); - if (IS_ERR(ctrl->pdr)) { - ret =3D dev_err_probe(dev, PTR_ERR(ctrl->pdr), - "Failed to init PDR handle\n"); - goto err_unregister_ssr; - } + if (IS_ERR(ctrl->pdr)) + return dev_err_probe(dev, PTR_ERR(ctrl->pdr), "Failed to init PDR handle= \n"); + + ret =3D of_qcom_slim_ngd_register(dev, ctrl); + if (ret) + goto err_pdr_release; =20 pds =3D pdr_add_lookup(ctrl->pdr, "avs/audio", "msm/adsp/audio_pd"); if (IS_ERR(pds) && PTR_ERR(pds) !=3D -EALREADY) { ret =3D dev_err_probe(dev, PTR_ERR(pds), "pdr add lookup failed\n"); - goto err_pdr_release; + goto err_unregister_ngd; } =20 - return of_qcom_slim_ngd_register(dev, ctrl); + ctrl->nb.notifier_call =3D qcom_slim_ngd_ssr_notify; + ctrl->notifier =3D qcom_register_ssr_notifier("lpass", &ctrl->nb); + if (IS_ERR(ctrl->notifier)) { + ret =3D PTR_ERR(ctrl->notifier); + goto err_unregister_ngd; + } + + ret =3D devm_request_irq(dev, irq, qcom_slim_ngd_interrupt, + IRQF_TRIGGER_HIGH, "slim-ngd", ctrl); + if (ret) { + ret =3D dev_err_probe(&pdev->dev, ret, "request IRQ failed\n"); + goto err_unregister_ssr; + } + + return 0; =20 -err_pdr_release: - pdr_handle_release(ctrl->pdr); err_unregister_ssr: qcom_unregister_ssr_notifier(ctrl->notifier, &ctrl->nb); +err_unregister_ngd: + qcom_slim_ngd_unregister(ctrl); +err_pdr_release: + pdr_handle_release(ctrl->pdr); =20 return ret; } --=20 2.51.0 From nobody Thu Apr 9 08:10:18 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (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 8A3F53CD8D9 for ; Tue, 10 Mar 2026 04:09:21 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115763; cv=none; b=pihgIUr2INF18nb0SjqPAPapGmXzKtSEmDjkjq1YcMKYtHuxTNToTuEYaI241yqbV8zEqfwjKlKX3R8qRmp5qMCjrJZIC7s1MLmwvt0IqgPOg52mp0T8FWibRpI08t59gIGpaqi7+AXwmCYUEg/cCCAP4QiKzaK+PjwyG9vJOEk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115763; c=relaxed/simple; bh=zGVaLAxemQaYiwlKZIKzDKYyFQu6oOcs69v7lEwpQxA=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=KIX5HrE8reWB9s2capk6SPx7T3Gd765nzUnjSNXI1HFs9Eu///vbACReyaPyhgEhdhsr5q4eL9m9MDWpP440q4QFOAx8TJcX4auvj78NlwaiUDh//HCCSeO8L7TJgnq8fYVrtiGnWTm8rr/Ee04VIUvS21iLN2gRtpHWKjPchgc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=GvNduocD; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=KL/Yryn1; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="GvNduocD"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="KL/Yryn1" Received: from pps.filterd (m0279863.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62A2EQ3S2460657 for ; Tue, 10 Mar 2026 04:09:21 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= UjlsEWsqPCF1j9+yQxHiKqzEkI4BuT/eRnZpqywirEs=; b=GvNduocDtWHuXiLm 4AK2gsSAKEcrh7h+tbt+gfME2d6DtDpDnVDE3iEVhEqycS1itbGsHMyZH9SUpgTZ x9rokacHv4UAUpNHnGDj/YdwwiPzenEO0eBXXWiAipiD9oOdgQItWoDaAFww90u4 V2a3FAVXZqKNe51ERigavJXSPien1CBqZBtzvsQru/jZ10v2LpSmn/+v4mFrSCBU p19eFu9IVOWEv0TdIW9puZeSUvPorOU9NUFcKMxMNnyj70hEW9UXUD54CA5Td1l+ lx1ihKnepX2gRJbfvFh8NbrEB2ytmfrO1vEBTc+Ee/6Dr+Jx8Jnzwtt1D2jJd95q rykE5A== Received: from mail-ot1-f71.google.com (mail-ot1-f71.google.com [209.85.210.71]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4csyv1ag9t-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 10 Mar 2026 04:09:20 +0000 (GMT) Received: by mail-ot1-f71.google.com with SMTP id 46e09a7af769-7d74533e53dso16064238a34.1 for ; Mon, 09 Mar 2026 21:09:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773115760; x=1773720560; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=UjlsEWsqPCF1j9+yQxHiKqzEkI4BuT/eRnZpqywirEs=; b=KL/Yryn1vhE9YHwNjSBADAVf0xks/Bvh/eBfmkr3lz30Cx7btVA4LnIs1VgB/r9tWY WjW6Vw0PvIggAL2yL0cxykHdA8U8yNWnEPBntPgg6Agq/jkFFXaoMn0w0hzlyBkZ3Srr HBTSZn5rNqz7zaNU31M3pJwpgT/p3OtN6XN+vPUTBY97CN+B09/WjAC518K/CxW1yC96 S2z4mCR/+7eE8rcLFzbrz+Tq7C4OgjjH4YiYvvqTlPH5TsSYqQRPzD7jgcItOrp1yHyl 065tY39nOPryJYlUtYki6HUVU1K1HdmevEhd026rI7g0Pb0TpDR9UMnpHGK1KMpIxhIR JtIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773115760; x=1773720560; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=UjlsEWsqPCF1j9+yQxHiKqzEkI4BuT/eRnZpqywirEs=; b=r3C5zoWCYupncHG7InTscZnOPVgXsKHNCry43sqD8b8smkcGAu66Wy4JzoeeenJlG9 zsf5yyLz6TKCderh9jyv3h+gNvnltMmedpfB0Ys8/mVK+XUvV9VdEqfOXljEKJowEhag B8S5V65gg0I9a+GLdJrr9tgZGL5GRNbNwFxw69QU82sg4CCL79LOgbYABS4XVI+QZNVq sia6E3SEYpLi/zbMCclYNe46tplygi4NGpmvmQxMPF0K0fMGgXNq7yCP02Iu2DzCGQdd JRAn3CmyDeK/hNVyvgBXtTASYbDf2/Uph/ipnHG3fbyS9I0LVfYgXbus/06Zd0shhXFU ultw== X-Forwarded-Encrypted: i=1; AJvYcCVQIGS026L4jidcOMzKuD05uGcJUASsrqbXm9t9BRkZJWfhBmlq1zPJ99YzkSjnITNr7Z0Ed6KE2jK4CMA=@vger.kernel.org X-Gm-Message-State: AOJu0YwBk+DvbYdSgLZZAysh2Q7fLd0oF/0dd8sAVLvANC2wU+JKhLHv Oc7PpnOXa6Fm+DtYsfk0VUY9ZTTrNC1fQtu00UAczeu0b2d/vYNZLv1lX8HVOtaAqgNEWX+OKIg 4kpY1fGd/ripN2aqVPjzKLSMt8K/iiTksz26hpf1m10IratgqLhk2zlBMWcM2W+/wTAA= X-Gm-Gg: ATEYQzxSw/mUWcroIDepY5x0T8tlsUlfOhPuhyAWttD+3YHPt0ELkyEFrl0doW+z8sc zokA6yAHAhYzYu1a7WcDJmqJRjRrCgW56vpqfQZ66aBHmJdPZbIZc7djELsfKz3ZM5OWe5CThE+ fTkSm2rwBlGFahApFmB7aCMt0a+mYoFs67Asf1LFFoayXblMOkRTo9IAdlfSdr1C8X3aDAmu4J/ 76ibux8CI+YBuwI3i6BGurUkC68TBznFxRa6uQv73fDlqWjk/NAy9yBWKrUXsHUKNQj7mmlmQbr 4X+rDFlCC0Rd7L342jnSAhpblZNRTx4apPX93r0Z7H5K22v0N6CZjy+71yMAJCLXHgUwXqq0Zzm trxhm6PxgyKyE5mWZNj3JHyixnhPdi8GpWFObnVUMXoA= X-Received: by 2002:a05:6808:2443:b0:467:1f90:412d with SMTP id 5614622812f47-4671f906e7bmr786583b6e.11.1773115760140; Mon, 09 Mar 2026 21:09:20 -0700 (PDT) X-Received: by 2002:a05:6808:2443:b0:467:1f90:412d with SMTP id 5614622812f47-4671f906e7bmr786566b6e.11.1773115759681; Mon, 09 Mar 2026 21:09:19 -0700 (PDT) Received: from [192.168.86.59] ([104.57.184.186]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-41756e24c39sm1595685fac.20.2026.03.09.21.09.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Mar 2026 21:09:19 -0700 (PDT) From: Bjorn Andersson Date: Mon, 09 Mar 2026 23:09:06 -0500 Subject: [PATCH 5/7] slimbus: qcom-ngd-ctrl: Initialize controller resources in controller Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260309-slim-ngd-dev-v1-5-5843e3ed62a3@oss.qualcomm.com> References: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> In-Reply-To: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> To: Srinivas Kandagatla , Greg Kroah-Hartman , Vinod Koul , Krzysztof Kozlowski Cc: linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Bjorn Andersson , stable@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=3519; i=bjorn.andersson@oss.qualcomm.com; h=from:subject:message-id; bh=zGVaLAxemQaYiwlKZIKzDKYyFQu6oOcs69v7lEwpQxA=; b=owEBgwJ8/ZANAwAKAQsfOT8Nma3FAcsmYgBpr5lpLT57UGW6OKOXgPyzrTb0L0MvKgFdYUyKa sGIUnV+ErGJAkkEAAEKADMWIQQF3gPMXzXqTwlm1SULHzk/DZmtxQUCaa+ZaRUcYW5kZXJzc29u QGtlcm5lbC5vcmcACgkQCx85Pw2ZrcXCxQ/9FMzppuWFWHC3LmXCiM+ouPWDPZi/Nf1ugV32/hk Vp/j1WSGg5HDjPIx05zBnlz1Dqe/MFHdycKNtuMuRDHClxV2xeI27SkTrKsNE6zVFNAMRFKAcrN 5vZmyp6mcqdlvv2VpBFD3+k2kyGF3hVaXfZ4Pb1xpdxxOOSiby0dgLWXOJfgVJBLCiX9jCKkt7V aZ0367oXrdU/ztqefS89/tzU6IuifVZw25Jli+DXYQ9fYfm7P16kUSCSZ/cD49ja3x6m7nDyL5N lfyRpBlibT0enrWEEoD/YhAs+ps2tr5NUhAt9S+1P/H8c98Nmls2Lc9iRMcHpWcmOzsFX1mpXKz nFag0hnMrqk9t8XorN7KJ5lAYzlyoDhiPD18wr9oZxxtWauAB8PfMRChYDESlUN6RmIPvLhd+Rr 4jXBSIUkkw3DIKaqkIotyGctBFsfohPL78w1d33DikWnlgBJHnILNJxGFtdx5rQFEEarq1u5HK0 huJah9o3dewLbPKgQcmO1Og9tDNE+K4icvLcb2GOb2KYB+Mg5jtDBEit7taB3z7L3W7XwnMNyzQ dD7T7jEA6vNci/UddIxy75O6t3RSg7ZrBy+FnioEkVSsxguirX38CzgzRdCxCxCyJxtja3xsC49 i8cPixAKjpLf/nP9BW71erDCo13pYViw+YksMmol+udk= X-Developer-Key: i=bjorn.andersson@oss.qualcomm.com; a=openpgp; fpr=05DE03CC5F35EA4F0966D5250B1F393F0D99ADC5 X-Proofpoint-GUID: BWOsKmyNABkRas0GDVE0pAGh4mU3_yGZ X-Proofpoint-ORIG-GUID: BWOsKmyNABkRas0GDVE0pAGh4mU3_yGZ X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzEwMDAzMSBTYWx0ZWRfX91waoXo0lSA0 Rdz74H2cUsdjr19h6vCIPSVAUmoaSR3s15Dq4ekwTFrYUIQnZO76TpiZ5e6IWYGblIbPlXGthDI AduY/3G1u6spQ4+sHHO2UGoOeQaN4cLyCdxToWfaW/k1M/992hvIbd5K9Xm5G9E+fK3Z+12qc1b 3G0pSJbM3qZotOvAoJyaMia8c+z77zTZd6M15pRvL2/wpq29QuWjok1P/0o/oL6imI4vHpqp6uZ 1Iy1nAy/CWR2tADQSRR2mEOiaF0R7WeYtNmlUbOcdL6HrBRyiWek9UIp5rGdKVcExN5bvTF1NQL SzU0wYj4+Oi9LfjWwwxtYjltnJFbtFL1hAbKhb5WOM+bnqd63h6e0Y96ACzjGf/EA1cy1Vy/ifu /5YhN2Aadi5Se0POgnbLJGTxhswFWY3V/o2xrVnOk/QI14VFTEUP709+MQUZ83FyP68BtxpRtRE 0dHRsAnztyMDlrJltDA== X-Authority-Analysis: v=2.4 cv=Cuays34D c=1 sm=1 tr=0 ts=69af9970 cx=c_pps a=OI0sxtj7PyCX9F1bxD/puw==:117 a=DaeiM5VmU20ml6RIjrOvYw==:17 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yOCtJkima9RkubShWh1s:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=UUHtT1FIUfGxZnwV23YA:9 a=QEXdDO2ut3YA:10 a=Z1Yy7GAxqfX1iEi80vsk:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-10_01,2026-03-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 clxscore=1015 spamscore=0 adultscore=0 priorityscore=1501 phishscore=0 suspectscore=0 lowpriorityscore=0 bulkscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2603100031 The work structs and work queue are controller resources, create and destroy them in the controller context. Creating them as part of the child device's probe path seems to be okay now that the controller's probe has been updated, but if for some reason the child does not probe successfully a SSR or PDR notification will schedule_work() on an uninitialized "ngd_up_work". Move the initialization of these controller resources to the controller probe function to avoid any issues, and to clarify the ownership. Fixes: 917809e2280b ("slimbus: ngd: Add qcom SLIMBus NGD driver") Cc: stable@vger.kernel.org Signed-off-by: Bjorn Andersson Reviewed-by: Dmitry Baryshkov Reviewed-by: Mukesh Ojha --- drivers/slimbus/qcom-ngd-ctrl.c | 38 ++++++++++++++++---------------------- 1 file changed, 16 insertions(+), 22 deletions(-) diff --git a/drivers/slimbus/qcom-ngd-ctrl.c b/drivers/slimbus/qcom-ngd-ctr= l.c index 76944c515291a62fb9cb192bec5cd5c2caa542f4..d932f7fd6170773890f561e3af4= 44ac2c5730338 100644 --- a/drivers/slimbus/qcom-ngd-ctrl.c +++ b/drivers/slimbus/qcom-ngd-ctrl.c @@ -1584,25 +1584,8 @@ static int qcom_slim_ngd_probe(struct platform_devic= e *pdev) pm_runtime_enable(dev); pm_runtime_get_noresume(dev); ret =3D qcom_slim_ngd_qmi_svc_event_init(ctrl); - if (ret) { + if (ret) dev_err(&pdev->dev, "QMI service registration failed:%d", ret); - return ret; - } - - INIT_WORK(&ctrl->m_work, qcom_slim_ngd_master_worker); - INIT_WORK(&ctrl->ngd_up_work, qcom_slim_ngd_up_worker); - ctrl->mwq =3D create_singlethread_workqueue("ngd_master"); - if (!ctrl->mwq) { - dev_err(&pdev->dev, "Failed to start master worker\n"); - ret =3D -ENOMEM; - goto wq_err; - } - - return 0; -wq_err: - qcom_slim_ngd_qmi_svc_event_deinit(&ctrl->qmi); - if (ctrl->mwq) - destroy_workqueue(ctrl->mwq); =20 return ret; } @@ -1649,9 +1632,18 @@ static int qcom_slim_ngd_ctrl_probe(struct platform_= device *pdev) init_completion(&ctrl->qmi.qmi_comp); init_completion(&ctrl->qmi_up); =20 + INIT_WORK(&ctrl->m_work, qcom_slim_ngd_master_worker); + INIT_WORK(&ctrl->ngd_up_work, qcom_slim_ngd_up_worker); + + ctrl->mwq =3D create_singlethread_workqueue("ngd_master"); + if (!ctrl->mwq) + return dev_err_probe(dev, -ENOMEM, "Failed to start master worker\n"); + ctrl->pdr =3D pdr_handle_alloc(slim_pd_status, ctrl); - if (IS_ERR(ctrl->pdr)) - return dev_err_probe(dev, PTR_ERR(ctrl->pdr), "Failed to init PDR handle= \n"); + if (IS_ERR(ctrl->pdr)) { + ret =3D dev_err_probe(dev, PTR_ERR(ctrl->pdr), "Failed to init PDR handl= e\n"); + goto err_destroy_mwq; + } =20 ret =3D of_qcom_slim_ngd_register(dev, ctrl); if (ret) @@ -1685,6 +1677,8 @@ static int qcom_slim_ngd_ctrl_probe(struct platform_d= evice *pdev) qcom_slim_ngd_unregister(ctrl); err_pdr_release: pdr_handle_release(ctrl->pdr); +err_destroy_mwq: + destroy_workqueue(ctrl->mwq); =20 return ret; } @@ -1697,6 +1691,8 @@ static void qcom_slim_ngd_ctrl_remove(struct platform= _device *pdev) qcom_unregister_ssr_notifier(ctrl->notifier, &ctrl->nb); =20 qcom_slim_ngd_unregister(ctrl); + + destroy_workqueue(ctrl->mwq); } =20 static void qcom_slim_ngd_remove(struct platform_device *pdev) @@ -1707,8 +1703,6 @@ static void qcom_slim_ngd_remove(struct platform_devi= ce *pdev) qcom_slim_ngd_enable(ctrl, false); qcom_slim_ngd_exit_dma(ctrl); qcom_slim_ngd_qmi_svc_event_deinit(&ctrl->qmi); - if (ctrl->mwq) - destroy_workqueue(ctrl->mwq); =20 kfree(ctrl->ngd); ctrl->ngd =3D NULL; --=20 2.51.0 From nobody Thu Apr 9 08:10:18 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (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 91A7F3A785F for ; Tue, 10 Mar 2026 04:09:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115764; cv=none; b=BQkmtMGK6EVq+LId3APHVlj92+2tU6OnPytmKnbDBNzfL5o5MlVdpuUjFNqQX/1fHP6dtB3lnUts/Dn6lKq7iaXuLCXV8Pn2cYiD6Itz9GvWuAbKfPh3GP+7uwud68vqO9z0COl+T/qkoWuugjAbMt2tCwRQzTPFjhfBHcErtqw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115764; c=relaxed/simple; bh=68+BXhTLgDWKkLMk+I9StqSF8+TK96OU30KM3ca9y2Y=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=C+z9GIVufsMX2kCZlzxsxcCoE8ersmW1ftjJit6WmJizYoAIqJ6FChey8VBtburvuxKwkcy62ScEPXwyJG4dM1gXhiLL5n/xCuGJg8SaphY4L6M9gj3bBb1bE7tJEQ72+mNbHJdqWxo1ZOzlGBwip2hwu5/qrjH+Yb6JRYLCCWc= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=gyn8NzuA; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=P5ZH9F7O; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="gyn8NzuA"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="P5ZH9F7O" Received: from pps.filterd (m0279866.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62A2ESGe1459452 for ; Tue, 10 Mar 2026 04:09:22 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= MurHg1m2uAKvWtn7RAZi7VVz1qreouQXsuQDvN2q5aU=; b=gyn8NzuAZ+sPSgiU TPBkhBqbCh25Oo2DOiVBJSK/AbkylsNaMg/O6ZouCK+r8+bXvL4VVaKYkzVgLpS8 Ujybxw1Ir9AYQgqRopXafM3ffOTBceaee6V3ipXT2uyfI0JUymbt8eEjvJYldRGj ksjT6Y8RTfaK0+dhdjTD0ZPQzs3c1tIlseCU6h8tpjJBNAT92C6n5oDpqSgE1axH /g6TK/iLkL7/sL8kUCXmnr/+eozgS+XxNvDtnEJ/6xCEQ63YOSpsN6SioPHXqzuC o4z/Nz76UmKZoFRKBkjC0tSE/SOwITekpBleQcv8EGzFwYq1kGQHBI7qSPnYHdTQ J4/WxQ== Received: from mail-oa1-f71.google.com (mail-oa1-f71.google.com [209.85.160.71]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4csyfy2jyf-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 10 Mar 2026 04:09:21 +0000 (GMT) Received: by mail-oa1-f71.google.com with SMTP id 586e51a60fabf-40ef793e45eso27466608fac.3 for ; Mon, 09 Mar 2026 21:09:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773115761; x=1773720561; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=MurHg1m2uAKvWtn7RAZi7VVz1qreouQXsuQDvN2q5aU=; b=P5ZH9F7OEZYWMgjh6BTzRX6Rn/WZ3jEEFNG4DfEe17OyJnyDWrFUlFU5K1+MphD+kN DUUfzODU/hWDERWGFtp6NyzGzMbhv6KYYmZ6oQvoKctXlZmE+cDgIlud4XsnO0A/2WEw 2mBWqHDahxpIW0nL18e62mc/LB1wKDKYY6kc5qA6pswBJXfVeqrPsY2ogUI+DwWD6izB MOIUBW9fBOblLmW37x2aaUvY4lDMGK2sOXrXdrpOorT0qwaDXAJvC1vDEA+WYnmAgVIq NIkAPf62yt5EKEdIYXuaV0pbm8jdltwjYukORpvqh7IPsu1RyUXu/Zc2FUwH82VRrang IRkQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773115761; x=1773720561; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=MurHg1m2uAKvWtn7RAZi7VVz1qreouQXsuQDvN2q5aU=; b=vlNx034XXzrHwQMJRakxmEwq8Epgsxw1EipPIXUCIj3ZIXbN56ork+KNIqfROb/8WS Rf33etBEY9p/5BDR9snwG/xPar4ljhfG+l4Esau0K4Bz0dAkkOWJ0gcZg1SdPIeQ7tu+ fC/nmFAYfZ6tKf+pCQdU8H+ZmRZCEMdVkINYpjJB5UP3ha/ysL2dnEt/QnEieNxWRpm0 2UqIadCuqNLoVJ6rDJoqCwqfqJCAmo6DdK5QUEgGwsrkMRGVJ8vh1I1HyZgoTfwvkckw +EDT8MG1atUCof5Ibjvm+LAcir8e9FFcKFcmCTlCk4qN6OQRGDEP6kwu1UNFgMEeYEuQ LUfw== X-Forwarded-Encrypted: i=1; AJvYcCXMIT9KVO0jKrz5lARbDHU+B03rjjg0TAxNlYHhXDrkV9HDP48eRz0sAiXUiWcFslBgKru4i0dB3Z4tYyU=@vger.kernel.org X-Gm-Message-State: AOJu0YwNf7CTqytu9462zRj6007LGoj/c/PYwO9/uRFC2VCFUGLBY2B3 PVhYDaeQP4qdo3rfDFOAURYn0SmOSYmxdBFhsBWaqeicV8tFJXlvTWjARULVfo/d2httArHUQtm aejcHodLz1/TVhlX23CZBrMyFME+nWIgkrV6CyR7ejOk09i9MDtf2Jo5HtlMLQIJnijE= X-Gm-Gg: ATEYQzyaVRFQG4Nd7vUBnD2DTzZdmGn1Tpbxe3de1ba9cYmPg8ggJ8WOV5dfzqRRdCe yebJb7iVZRSvLCyBu9uhm7194fQ4sMjZlY2AVMPF/i+DQwP4yJ8h9G+lMMZcMnNbAj5k9cdEpzv 3s377zwVO8tEuDTbYQunKVUZLDLapg7rLMiSJw3yFrXRNouD0zuUFPDrTBtMeEZYJDPbZrDmAww 1vwwXHu+/sMix6E1qmVp/GjfIIcljIEFrzC/jltF1Avz1BlzZBQ+h/SxNqZ9Xqk5OaiV04x97Vt BBrSeiHGrJMhxEKMec24VincPg92OhDj9tkmFe1ixrK7qdTyJn1o5zbS04Hmrvwp83SFlZHkNVW 7i7zt7rZb4h9iir/G3pKFZgW9tH0qIZhdrqi4v8MhxKE= X-Received: by 2002:a05:6870:720e:b0:417:5e91:626b with SMTP id 586e51a60fabf-4175e9163bbmr633011fac.53.1773115761026; Mon, 09 Mar 2026 21:09:21 -0700 (PDT) X-Received: by 2002:a05:6870:720e:b0:417:5e91:626b with SMTP id 586e51a60fabf-4175e9163bbmr633001fac.53.1773115760624; Mon, 09 Mar 2026 21:09:20 -0700 (PDT) Received: from [192.168.86.59] ([104.57.184.186]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-41756e24c39sm1595685fac.20.2026.03.09.21.09.19 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Mar 2026 21:09:20 -0700 (PDT) From: Bjorn Andersson Date: Mon, 09 Mar 2026 23:09:07 -0500 Subject: [PATCH 6/7] slimbus: qcom-ngd-ctrl: Balance pm_runtime enablement for NGD Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260309-slim-ngd-dev-v1-6-5843e3ed62a3@oss.qualcomm.com> References: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> In-Reply-To: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> To: Srinivas Kandagatla , Greg Kroah-Hartman , Vinod Koul , Krzysztof Kozlowski Cc: linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Bjorn Andersson , stable@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=1352; i=bjorn.andersson@oss.qualcomm.com; h=from:subject:message-id; bh=68+BXhTLgDWKkLMk+I9StqSF8+TK96OU30KM3ca9y2Y=; b=kA0DAAoBCx85Pw2ZrcUByyZiAGmvmWnIPoY9VkcBwUCZzjReB8mBuemmmsw56vlCoijsujPCg YkCSQQAAQoAMxYhBAXeA8xfNepPCWbVJQsfOT8Nma3FBQJpr5lpFRxhbmRlcnNzb25Aa2VybmVs Lm9yZwAKCRALHzk/DZmtxcWCEACUHy50tUY/zaO6ecq/5e6ic9BsYZ6G0EFiBQsaEKAHjTlCJ16 nW6BDtleYHMfmzOs4fLXZjZ9f7TbT944RR+xgmiktbF8VkSFbweFpr4TwFE3DXCMIbLhk9Nrbtd /8eTBUrHTAcHXXo/K8Qou6TYJ0ILQcB5ER7IyqV/ov/TUNphiZaJhYAhB2KBPYGDqmCgND7+H0I yUPAwsKG8s4Rb00yt5EDOdmyIVeCn5m1yqdfm0MzzDfX4chzXwA+IQ+N+mfTWOrQar9CVcOrj9e MWiI4jb0Zc3ZlSaFFMqDUrL+e9hHkNDoeR58LVMDnvfA+LTCqmzoea6p9AESzZ7gKauhRY3/WO2 OEDhERwQ73bV/PHl9ThAiQcZju+BJ6NLx/R8Og6qL5fn8rdyyZyUh55DAWdNzWuWHwDC+lEsczW lhwywtZ4r7fte0zScxqxzPz4SrH5DJWb/yoPMy7TpC0SDUR7a3Ph3KU7F6xjJzBVUC+pZ+Ve67o t2Tt8uE7IYncbLEN78v1wrIAbcWCLuwmvs+fkXQU4kX0Mfh3FfdQ96enw5IEWJLdOSH8osKtIbl GzaK21rE/09cN5acnSx2zLlF9ajKBLQXn39A+AbcI0ofKi0JP9M8Br21mUhBrbSogDVfB6mCwtb zFdc9gS8Nk37nXVaOfIaLA2HZpoAuW8ZcMQ== X-Developer-Key: i=bjorn.andersson@oss.qualcomm.com; a=openpgp; fpr=05DE03CC5F35EA4F0966D5250B1F393F0D99ADC5 X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzEwMDAzMSBTYWx0ZWRfX+YyPvslgyK5p GT+00IrFuYPJDBS8aki1ZdzenNK7z+z4cEXuYeKI2gGowBKzzdXOHhKP6BXTn4LPu/I48XEGPgf hjd/TE33vsbVNL2znoTZlZn81Cba0bTpAVHmhqCZrcaxBS6IgRZGmbQnpq+0PPbc/mSdzDd3vUn ikRRGfBDGMUxfIWwoO6i1Zwgmtv6qKWAMN5CUl6Cyinhy2nyjNFx9Vcgy5aAzCwzKQBts8Mmuza trfXh7yfXbsIdDNQAGuD+qGdTEcYOBbZQrxyvgMrKqYSaoLyfJyOGSFFr4U5yiUQg/HcLOsaU0b 1R/Aiegy0/hQ1lOdNAzQbv26kw1E9BZ5CqCC6JusHqBcOLjev3nnILhMT2v5jhvynclXp4jpq49 vB52YrGKRWfPvTBTO+jXZY/JmJmDl3Uwp43dsV7GA/8nE3Yq72TwzoRfi/FegAyr3Q03sfieiE2 xAdb5sn3oTXVxOIglEA== X-Authority-Analysis: v=2.4 cv=OcmVzxTY c=1 sm=1 tr=0 ts=69af9971 cx=c_pps a=CWtnpBpaoqyeOyNyJ5EW7Q==:117 a=DaeiM5VmU20ml6RIjrOvYw==:17 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=YMgV9FUhrdKAYTUUvYB2:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=v7zRpcr-n2crOtZbBgkA:9 a=QEXdDO2ut3YA:10 a=vh23qwtRXIYOdz9xvnmn:22 X-Proofpoint-GUID: LFbH1hT4fNrHpjxWC3vbwsncmigekllE X-Proofpoint-ORIG-GUID: LFbH1hT4fNrHpjxWC3vbwsncmigekllE X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-10_01,2026-03-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 impostorscore=0 malwarescore=0 phishscore=0 clxscore=1015 adultscore=0 bulkscore=0 suspectscore=0 priorityscore=1501 lowpriorityscore=0 spamscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2603100031 The pm_runtime_enable() and pm_runtime_use_autosuspend() calls are supposed to be balanced on exit, add these calls. Fixes: 917809e2280b ("slimbus: ngd: Add qcom SLIMBus NGD driver") Cc: stable@vger.kernel.org Signed-off-by: Bjorn Andersson --- drivers/slimbus/qcom-ngd-ctrl.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/slimbus/qcom-ngd-ctrl.c b/drivers/slimbus/qcom-ngd-ctr= l.c index d932f7fd6170773890f561e3af444ac2c5730338..54a4c6ee1e71fe55794f0957597= 9826d9aa5be9f 100644 --- a/drivers/slimbus/qcom-ngd-ctrl.c +++ b/drivers/slimbus/qcom-ngd-ctrl.c @@ -1584,8 +1584,11 @@ static int qcom_slim_ngd_probe(struct platform_devic= e *pdev) pm_runtime_enable(dev); pm_runtime_get_noresume(dev); ret =3D qcom_slim_ngd_qmi_svc_event_init(ctrl); - if (ret) + if (ret) { dev_err(&pdev->dev, "QMI service registration failed:%d", ret); + pm_runtime_dont_use_autosuspend(dev); + pm_runtime_disable(dev); + } =20 return ret; } @@ -1699,6 +1702,7 @@ static void qcom_slim_ngd_remove(struct platform_devi= ce *pdev) { struct qcom_slim_ngd_ctrl *ctrl =3D platform_get_drvdata(pdev); =20 + pm_runtime_dont_use_autosuspend(&pdev->dev); pm_runtime_disable(&pdev->dev); qcom_slim_ngd_enable(ctrl, false); qcom_slim_ngd_exit_dma(ctrl); --=20 2.51.0 From nobody Thu Apr 9 08:10:18 2026 Received: from mx0a-0031df01.pphosted.com (mx0a-0031df01.pphosted.com [205.220.168.131]) (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 BF9EC3D3339 for ; Tue, 10 Mar 2026 04:09:23 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=205.220.168.131 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115765; cv=none; b=OIvM+CA4i/yhlmfuoy423nZxcuWUAGFy+hBrkKfBJyPHutmrSe1JOUHBMQzzyMGeFKpAYyBBCIyILCY0ydJmeJrXP6Cw37xy36RTLJV/3RrgQ7f7LjybGbyOd70IjYoIwVYsKDX1vLCtIbTW4q2lEHebArgTfJIRDL0pROwFRX8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1773115765; c=relaxed/simple; bh=h2oKxNLijxlRhbdRVtX8BZAv0v6kEm7MVydl023ItP8=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=UYMdPk/wo+N8qK+k23Q1BMY03kk+Ww852ScJ5BKdkUTq0xAsOvI0vQ9lQq1bQIekMzPgNponMPVEEfkFetvEiAajYlvKQ91z0N+EmjH2Ndcok8t2gjiMNuTXeDz4M+2Y9yi2HKMnHHejye9r0m4un1B4rwXxglFBmlR7MlM44fI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com; spf=pass smtp.mailfrom=oss.qualcomm.com; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b=NSuhjOcr; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b=g0Po3PHO; arc=none smtp.client-ip=205.220.168.131 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=oss.qualcomm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=qualcomm.com header.i=@qualcomm.com header.b="NSuhjOcr"; dkim=pass (2048-bit key) header.d=oss.qualcomm.com header.i=@oss.qualcomm.com header.b="g0Po3PHO" Received: from pps.filterd (m0279863.ppops.net [127.0.0.1]) by mx0a-0031df01.pphosted.com (8.18.1.11/8.18.1.11) with ESMTP id 62A2EQ6x2460666 for ; Tue, 10 Mar 2026 04:09:23 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=qualcomm.com; h= cc:content-transfer-encoding:content-type:date:from:in-reply-to :message-id:mime-version:references:subject:to; s=qcppdkim1; bh= Mpp/AuYmqB1cFf9TxqAzMz1PfHGCSXuKCzmcpuL4E/8=; b=NSuhjOcr50+VbsHu JWHP7wE3J8O365RvV6BpbliBbkvOeR7pqvR0XNa9w7erip70or0GK4eGYlPZ25DV CPosKxFdqCT95GcLR6810nLlWuH6SG/7pY8iX2e8l8EUp5eWOe03UxHSqKynSKQI JSESs0BR1QU+XY/LPBC29EZ2vkOq/M2jjFWpRZ+uRg6ziP+KgZI6y9QcBCssO8sM XFpglVTmp8Oi7LcO5hEXk3sZOI9iOA5PlUnjGc4x5Ej+PEWi9njhhloAkaY0ir/X o4Ija1BPT7qdTUdn4oslCBONIY+dQXT4O6feXq0YMC2nQb0dnk//BWzJaHxlO1Y/ slTNGQ== Received: from mail-oa1-f69.google.com (mail-oa1-f69.google.com [209.85.160.69]) by mx0a-0031df01.pphosted.com (PPS) with ESMTPS id 4csyv1aga0-1 (version=TLSv1.3 cipher=TLS_AES_128_GCM_SHA256 bits=128 verify=NOT) for ; Tue, 10 Mar 2026 04:09:23 +0000 (GMT) Received: by mail-oa1-f69.google.com with SMTP id 586e51a60fabf-40a4d2264abso59045184fac.2 for ; Mon, 09 Mar 2026 21:09:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oss.qualcomm.com; s=google; t=1773115762; x=1773720562; darn=vger.kernel.org; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:from:to:cc:subject:date:message-id :reply-to; bh=Mpp/AuYmqB1cFf9TxqAzMz1PfHGCSXuKCzmcpuL4E/8=; b=g0Po3PHOOZ9Gb8a+l/ESTynhjVzVOz4xYtqqBHBvF6CBWZjyT74spdcWvZvIYh2DzV /Iu0JwcuIE44F17isEevgiP6SeN3yCDMSIHV+NcGYmv4NOMGIrHxDCHlczc/RH5KLcso l1eSd3szOg/gR1/aohtOaiuDuKtWLsMyaowiOAdQXHasw0+dHrH5qsWO5P1aYSLwQfpf qcqJPNddXhxb5JAIV1+xoq696dZY85q3LA0pZoVUyS476pi0ZLSnMWKua083T4apTffB XkzYVA2/eYVhfVH+jNRflBHk3vuNKKcNT/TpfVAyZfWEqIBS1zjdkBC22aHXQWH9fLnY oXNw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1773115762; x=1773720562; h=cc:to:in-reply-to:references:message-id:content-transfer-encoding :mime-version:subject:date:from:x-gm-gg:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=Mpp/AuYmqB1cFf9TxqAzMz1PfHGCSXuKCzmcpuL4E/8=; b=uSYuo1F3IfDcZUUFHzNYAGG+TncRrm809O+k2f9oNRG8grvGBbcjNwiHCvlIO3jURB 2MwAzJFywqxay/2UVXKEtLiocSj66jilUoQ26i+SKjIfSj8kBL2pdsVCdG/O6sTCgsz1 g/LE6xNpZIY9VJ0p7JWbwKu6pvQxIBdh+jcMdEuLNxZcr6kJp3P2WvOJdkrh56UP8DmM 5ofwd0IzsJkb2amQL7N1oz2W9C73vFE1S5sKPGF/Z5hre7N9R15G8UVfZ0gLRzKpfjAy FK0lzqTiDct6e99lpuxvmCIn8OdWBTkFFa4OojPN3K+tNZQ0FGYjl/TD4B1ZXH9IDkzb Dz0w== X-Forwarded-Encrypted: i=1; AJvYcCXYQLH8agXLx6BAqSUM4rvhR9MvZR3S1o0ahEmscqSs8BO+PT19zYLUllFL1pVSkQlH/E9g9ggRLnd8keE=@vger.kernel.org X-Gm-Message-State: AOJu0Yw+5C09D/WPPkTERUn4qdKeXjGGcTJ2u2Zz+/pmivzTq151l0GE q7OkFGOtZrMta4xMKIQfHf6pAPAl89g01GwB65GfBw4m+HL1G9Cs4SvDlIxjtadqYY6JS73h+Ri 5ZDg4xF226c+jJ+u00a1XF7Dwh0fjnNlzkpUHok8wHXwTk4rmK1sbzcXudK4GIlAbTxw= X-Gm-Gg: ATEYQzyLM/yICMHQohsQxw5BzJHhyvY31y8HqKjn+gvH9P12Y9n4OamDmcXSbhvnGrP ivkVodfcuzC6QBybUKOFxVS9n920DIt4qQ6cPe3WHq5p78tRIXHvAp8giMb2GqvZYjmE0EHwnUv GhDn95n2u7MXa78tM+VbJvnHyUfNtCbjeaKDpEuMkql+DteKuwbLBG6URDMufvi0ZnspUFyNyW1 tIY1zoPhuj7De7jh7e5KNeJY1UN3k63BUxo0oefAalH4oIWPBrDv1t5mZIZDlYMJAmmKR3DpJ9A 6OdKq3VntWXCrcoa63Y0abNKvTdGMgGMUmuRXyzITTKYau6A4mDt8rG5IQ2ghAnDJHjNW0iR5r4 JjWPycXEJoNu95GKlS3WDZqQs3asNvMyrJ7MBalvfrzc= X-Received: by 2002:a05:6870:4e89:b0:417:1534:3c86 with SMTP id 586e51a60fabf-417153495bbmr5126138fac.15.1773115762282; Mon, 09 Mar 2026 21:09:22 -0700 (PDT) X-Received: by 2002:a05:6870:4e89:b0:417:1534:3c86 with SMTP id 586e51a60fabf-417153495bbmr5126126fac.15.1773115761869; Mon, 09 Mar 2026 21:09:21 -0700 (PDT) Received: from [192.168.86.59] ([104.57.184.186]) by smtp.gmail.com with ESMTPSA id 586e51a60fabf-41756e24c39sm1595685fac.20.2026.03.09.21.09.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Mar 2026 21:09:21 -0700 (PDT) From: Bjorn Andersson Date: Mon, 09 Mar 2026 23:09:08 -0500 Subject: [PATCH 7/7] slimbus: qcom-ngd-ctrl: Avoid ABBA on tx_lock/ctrl->lock Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20260309-slim-ngd-dev-v1-7-5843e3ed62a3@oss.qualcomm.com> References: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> In-Reply-To: <20260309-slim-ngd-dev-v1-0-5843e3ed62a3@oss.qualcomm.com> To: Srinivas Kandagatla , Greg Kroah-Hartman , Vinod Koul , Krzysztof Kozlowski Cc: linux-arm-msm@vger.kernel.org, linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org, Bjorn Andersson , stable@vger.kernel.org X-Mailer: b4 0.14.2 X-Developer-Signature: v=1; a=openpgp-sha256; l=2713; i=bjorn.andersson@oss.qualcomm.com; h=from:subject:message-id; bh=h2oKxNLijxlRhbdRVtX8BZAv0v6kEm7MVydl023ItP8=; b=owEBgwJ8/ZANAwAKAQsfOT8Nma3FAcsmYgBpr5lpNWX7vFLIrpfa6+l2c2eP0Ku9eWvHQge+Z FG1Wu67ZPqJAkkEAAEKADMWIQQF3gPMXzXqTwlm1SULHzk/DZmtxQUCaa+ZaRUcYW5kZXJzc29u QGtlcm5lbC5vcmcACgkQCx85Pw2ZrcWjbxAAlaO0beJsT+uPbh5rqq3vZrOVofupsj6DRP8uD8Z XCZKje3vXw6NgoQG4a0DLhNLazfOyacrHarVcvdrvsGZvX/ZJGVTabNZ5QYVkXWrR5eOGRvOGM9 Avw0oQ6oXo6hdhD/A7WupVSl6EItLRsM6wJ0k6YnmXsjz3qibNcH5Xl6otQOK7sHEEnmljCDM5Z mApKUEhD/QqVnZNcAqfPEfcm5zdCeEwNtjkGXm3xae9kHyfRzOl+pmgWyU4pfo8Mic6udemF+ku KSL0kmP/TBNCXInYYIkyUk3qYl2jIymHyY2gEQsjRqiHlvNC6X2iTkLZ8/jbU9N44c8TJPj+yfm 69o4tvekxQcVWe2ZepykzV1j+r94hnxefzeJeUUIJbowt27lka2u2J9SX/Yzi/GajJudKlgWzZ9 Ufp/6lRANogpjkl9NpKG8YiWa+CCHKR91gym2ksCItPs5SBVGUHBm0Aq6ZTZHy5I6SECct6oCD6 dW4BhgH6Vbb5nKeO3SeAT+ty4igkMjrdHS8ohc702PhWdNC7bVIk0BR3EDBm08vMpC6MPQemb2a BbAD3k/aV/NSiLhpBY1iTb/1Menkha/GUQaTjmnDj5ejlqXUmpBaUTHh87hKkhgZXsB+rr9CT5v 5d7fFRJ0F3gu3HXeJ4DJgmOekv8wMYNQJ3yTBjxIXFwE= X-Developer-Key: i=bjorn.andersson@oss.qualcomm.com; a=openpgp; fpr=05DE03CC5F35EA4F0966D5250B1F393F0D99ADC5 X-Proofpoint-GUID: vUHKc3pBTpwUJo06Jfij82dTMiI2VsIG X-Proofpoint-ORIG-GUID: vUHKc3pBTpwUJo06Jfij82dTMiI2VsIG X-Proofpoint-Spam-Details-Enc: AW1haW4tMjYwMzEwMDAzMSBTYWx0ZWRfX8EuCiwCxBVne 0u9ebLR5mA3178iGdmm3JqHPfGOF1P0KeXwTBoc6KFB7mIVXwmbPQ2gRmJ0b11bnmNvTBGy2yqw h9KNQb5JEDFjo1tO1kDaTO9Gtr9FdSvVttdYPc9fV5VPgY2yvMw3OTCf8VI5uEMmXVMQlba1UUI 3h4/+LmfMDrSwm5VbrdlKvLa64tR29yJJRsxFUFIhBmeU39wMwheHexBmtWGgRf6H4I0x2oM85k ecYM5fYzNkdJ2dvldfQwOezSIRDYEc2KQvDj46zvYROG2H7bxPV/6Wg0G5efQOVNwBvwcHDydUd 5uFQ1Wdn0Lu9fRbYLFzIvcg2YoZZ1krlojdzTSyJzWZx1cCKGGBCph2YlXyN7kznEfTQgdBjk+Z NkOHem6hLl2wsjX3fy42zUPQzpWViO16KkOKJK+PHCxSheE9zr+BYCguNGKHKAG6d6VLteYQhXG 0/FDQY+blX6u1fXk9qg== X-Authority-Analysis: v=2.4 cv=Cuays34D c=1 sm=1 tr=0 ts=69af9973 cx=c_pps a=zPxD6eHSjdtQ/OcAcrOFGw==:117 a=DaeiM5VmU20ml6RIjrOvYw==:17 a=IkcTkHD0fZMA:10 a=Yq5XynenixoA:10 a=s4-Qcg_JpJYA:10 a=VkNPw1HP01LnGYTKEx00:22 a=u7WPNUs3qKkmUXheDGA7:22 a=yOCtJkima9RkubShWh1s:22 a=VwQbUJbxAAAA:8 a=EUspDBNiAAAA:8 a=YEP7kvCIQ0LacLc3HpEA:9 a=QEXdDO2ut3YA:10 a=y8BKWJGFn5sdPF1Y92-H:22 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1143,Hydra:6.1.51,FMLib:17.12.100.49 definitions=2026-03-10_01,2026-03-09_02,2025-10-01_01 X-Proofpoint-Spam-Details: rule=outbound_notspam policy=outbound score=0 malwarescore=0 clxscore=1015 spamscore=0 adultscore=0 priorityscore=1501 phishscore=0 suspectscore=0 lowpriorityscore=0 bulkscore=0 impostorscore=0 classifier=typeunknown authscore=0 authtc= authcc= route=outbound adjust=0 reason=mlx scancount=1 engine=8.22.0-2602130000 definitions=main-2603100031 During the SSR/PDR down notification the tx_lock is taken with the intent to provide synchronization with active DMA transfers. But during this period qcom_slim_ngd_down() is invoked, which ends up in slim_report_absent(), which takes the slim_controller lock. In multiple other codepaths these two locks are taken in the opposite order (i.e. slim_controller then tx_lock). The result is a lockdep splat, and a possible deadlock: rprocctl/449 is trying to acquire lock: ffff00009793e620 (&ctrl->lock){+.+.}-{4:4}, at: slim_report_absent (drive= rs/slimbus/core.c:322) slimbus but task is already holding lock: ffff00009793fb50 (&ctrl->tx_lock){+.+.}-{4:4}, at: qcom_slim_ngd_ssr_pdr_= notify (drivers/slimbus/qcom-ngd-ctrl.c:1475) slim_qcom_ngd_ctrl which lock already depends on the new lock. Possible unsafe locking scenario: CPU0 CPU1 ---- ---- lock(&ctrl->tx_lock); lock(&ctrl->lock); lock(&ctrl->tx_lock); lock(&ctrl->lock); The assumption is that the comment refers to the desire to not call qcom_slim_ngd_exit_dma() while we have an ongoing DMA TX transaction. But any such transaction is initiated and completed within a single qcom_slim_ngd_xfer_msg(). Prior to calling qcom_slim_ngd_exit_dma() the slim_controller is torn down, all child devices are notified that the slimbus is gone and the child devices are removed. Stop taking the tx_lock in qcom_slim_ngd_ssr_pdr_notify() to avoid the deadlock. Fixes: a899d324863a ("slimbus: qcom-ngd-ctrl: add Sub System Restart suppor= t") Cc: stable@vger.kernel.org Signed-off-by: Bjorn Andersson --- drivers/slimbus/qcom-ngd-ctrl.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/drivers/slimbus/qcom-ngd-ctrl.c b/drivers/slimbus/qcom-ngd-ctr= l.c index 54a4c6ee1e71fe55794f09575979826d9aa5be9f..75d70de0909a8d17e2410d30f78= 11f32d5eebea3 100644 --- a/drivers/slimbus/qcom-ngd-ctrl.c +++ b/drivers/slimbus/qcom-ngd-ctrl.c @@ -1471,15 +1471,12 @@ static int qcom_slim_ngd_ssr_pdr_notify(struct qcom= _slim_ngd_ctrl *ctrl, switch (action) { case QCOM_SSR_BEFORE_SHUTDOWN: case SERVREG_SERVICE_STATE_DOWN: - /* Make sure the last dma xfer is finished */ - mutex_lock(&ctrl->tx_lock); if (ctrl->state !=3D QCOM_SLIM_NGD_CTRL_DOWN) { pm_runtime_get_noresume(ctrl->ctrl.dev); ctrl->state =3D QCOM_SLIM_NGD_CTRL_DOWN; qcom_slim_ngd_down(ctrl); qcom_slim_ngd_exit_dma(ctrl); } - mutex_unlock(&ctrl->tx_lock); break; case QCOM_SSR_AFTER_POWERUP: case SERVREG_SERVICE_STATE_UP: --=20 2.51.0