From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id DEC22C43602 for ; Wed, 8 Jul 2026 09:01:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To:In-Reply-To:References :Message-Id:Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:Date: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=uujWU4pxjJzuJYUbcpSqUlEN3LiP3PT6PxeH0l499rg=; b=xT2YFi59yeQRVrCd6IpStUjVwd N6C3qHZDYqO/y+yLajhV9zQB79NcJGCrr6YqtXRlsgACykBMCWbnzmXHssYMQjpHzTyiaBrb9e25f mJw7pornaf7DD7D4smzha0izsIgS5Ah+klzzgb4sJFC3JZUFofWQmBQfHDGze2Y/+rq0pSfrSMs9Z vYus7KV2Yp8HAURHs1tXlPlxrAVSJs0DMoM0UzD7S0fnuOAbV0GEPWxW46tBwu+g5wWxHbsGH7oGj hylyKblGrb7DjmjZfOJ7kT1qzvrikEY7UaOatV/5uWYNHL/Z7c2pxFwAEG0mB4OItd8D0QyqCa0// 7C3wkCNA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.99.1 #2 (Red Hat Linux)) id 1whO9G-0000000GgJy-175Q; Wed, 08 Jul 2026 09:00:54 +0000 Received: from tor.source.kernel.org ([2600:3c04:e001:324:0:1991:8:25]) by bombadil.infradead.org with esmtps (Exim 4.99.1 #2 (Red Hat Linux)) id 1whO91-0000000Gg3W-0hLB for linux-arm-kernel@lists.infradead.org; Wed, 08 Jul 2026 09:00:39 +0000 Received: from smtp.kernel.org (quasi.space.kernel.org [100.103.45.18]) by tor.source.kernel.org (Postfix) with ESMTP id 96A55600C3; Wed, 8 Jul 2026 09:00:38 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B8B261F00A3A; Wed, 8 Jul 2026 09:00:37 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel.org; s=k20260515; t=1783501238; bh=uujWU4pxjJzuJYUbcpSqUlEN3LiP3PT6PxeH0l499rg=; h=From:Date:Subject:References:In-Reply-To:To:Cc; b=J1New+MTdEK4xAH04oUgG0dKCW4yEZj1lq/KwjVGJkFLEEQGZ6LzTnJC5FcRayPOM rzk2vLAtO8KLmm1fbr4I8wlOwQ4MQsk0ym1/m1M01FzIdAkjtRAkv4ruvHN21E6qqC TqAjZxTjxTQKF569OSLbMoTjChgonnjHCxmFRzUS9yycDLQWPIJH+Q9SYOdUvakhAC 7h77soTtttzY0aBfNtg42cjzi60vLuOAC3S/7sCV2ABkn9i/XOJPVQvY/Uce2St+Sa o9JKpbJAC1kLfKEs2vGPTIwN3W8+h3LG0meT38i2Xx6mZFSEhobYIsm2isQ5cGkVRS 1NkDV1CvToPhA== From: Sudeep Holla Date: Wed, 08 Jul 2026 10:00:10 +0100 Subject: [PATCH v4 14/16] firmware: arm_scmi: Unwind P2A receiver mailbox setup failure MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260708-scmi_core_fixes-v4-14-53142cd60b63@kernel.org> References: <20260708-scmi_core_fixes-v4-0-53142cd60b63@kernel.org> In-Reply-To: <20260708-scmi_core_fixes-v4-0-53142cd60b63@kernel.org> To: arm-scmi@vger.kernel.org, linux-arm-kernel@lists.infradead.org Cc: Cristian Marussi X-Mailer: b4 0.15.2 X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org mailbox_chan_setup() can request an additional P2A receiver channel after successfully acquiring the primary P2A channel. If that later request fails, the function returns immediately and leaves the primary channel allocated. Unwind the primary mailbox channel before returning the error so probe deferral or other setup failures do not leave the channel busy for later probe attempts. Fixes: fa8b28ba22d9 ("firmware: arm_scmi: Add support for platform to agent channel completion") Reported-by: Sashiko Signed-off-by: Sudeep Holla --- drivers/firmware/arm_scmi/transports/mailbox.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/firmware/arm_scmi/transports/mailbox.c b/drivers/firmware/arm_scmi/transports/mailbox.c index 37e3eab529ea..308736c3ead9 100644 --- a/drivers/firmware/arm_scmi/transports/mailbox.c +++ b/drivers/firmware/arm_scmi/transports/mailbox.c @@ -241,9 +241,10 @@ static int mailbox_chan_setup(struct scmi_chan_info *cinfo, struct device *dev, smbox->chan_platform_receiver = mbox_request_channel(cl, p2a_rx_chan); if (IS_ERR(smbox->chan_platform_receiver)) { ret = PTR_ERR(smbox->chan_platform_receiver); + smbox->chan_platform_receiver = NULL; if (ret != -EPROBE_DEFER) dev_err(cdev, "failed to request SCMI P2A Receiver mailbox\n"); - return ret; + goto err_free_chan; } } -- 2.43.0