From nobody Thu Apr 2 12:31:51 2026 Received: from mail-pj1-f53.google.com (mail-pj1-f53.google.com [209.85.216.53]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6034A399363 for ; Sat, 28 Mar 2026 16:07:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.53 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774714036; cv=none; b=U1VavmD7hQ0UhqgTwMSzwSX8FhB8pTFgEVnpWLUuP+1g9xZj4fd/oCIcmTfQgCen7+4yHoKMlFK5iq9ohLK0KWfCO9U5kWsF59+WUVUzo6wCk9dVoUQvPTjPM3XK+3zCi76Q+MUP4+rG9xiAoPHz2opXdHMxq4XE4bd8eqXYNtw= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774714036; c=relaxed/simple; bh=B2M6TmSMVm9Sf6C3C9nuArJeOUQJv3qKC5BIO5ffMLE=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=HvqDAoDH68NYYuieiqjD5KrN4uAXkGM8eXkTaIT/EqneYaGKRum5E5gePQQ3DwzsWOCA0BSsaeC2ZGaZTy6qDvouXVgLhfQnthnkQh5ow3THAxp+xON3sx2xAb8An63AwQz9JFNK1UJ4XrNzcbtaU/dBKD5PeEwWcQi9PDew0L4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=nuq3Opti; arc=none smtp.client-ip=209.85.216.53 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="nuq3Opti" Received: by mail-pj1-f53.google.com with SMTP id 98e67ed59e1d1-35d932cc948so479005a91.2 for ; Sat, 28 Mar 2026 09:07:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1774714033; x=1775318833; 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=6/qgP9gqmMpp2U/rdBQhHtYOkT3qsy2wmqdnlrMFSgg=; b=nuq3OptitzsTtith2LJCAY2l528IdOyXUFHj1go7AmLbnP99BSdgg7c1Q3FVC88/gO pYL3HnUC/ztJjvs3JHI5UHFvqhbiifRZGoq0tUapzvd2Bz6h4C1Qz0YqgoT2CvFSUhW1 ubqLtxyKNZv/by46bcO0BySHagsT/NTx2hCkL13KATU5Wv9CWk+teZ/iXJFEKNl0Wt48 r+AQmTtEM9fvni6bOCeOadA8Ry2x9oBPLrRZpF1eR6VG0+TxbBr1BJoM0ScDOn8hkIQ1 rCKy7Cu7yInd05pGRmXtADhfQnGMJ21Q9Hp3HZXX3Of+jY8AI/hkBBxV8vxxdn5rkxuB GwrA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774714033; x=1775318833; 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=6/qgP9gqmMpp2U/rdBQhHtYOkT3qsy2wmqdnlrMFSgg=; b=KSbYriT3FEl0ndSX+/M8ECnUXymVyJQ+rYntm9ZMsYp4hmvVW7BOf1RLOrEuOIKaKW KmEfLtgu+5e16yQ/TLfBIu+J5TfCxKoMOdo6DJl/MJQZMoRDMqLvB/c7p3oQDEWNwT20 L9YrfeyLE+GaGmbnNklAyzAHXConKiwdsxiJHelhRlmybXMkzVXHUd6y0qCCsZK8aXoq Rqk4zFH9Ya/+/WZcu3Jv4ZLdiUU3/5aXM2pwcmlQ2drTwOu+ZQv6IQxXJXVps5eArDEd tADFw1mHERaWX5/i6BkjxWeejX05WN3CG3TdxHbAEHLmi3zjPzJxsh/B7FBLS8yLGc+M eutQ== X-Forwarded-Encrypted: i=1; AJvYcCXuDUN58Q3YiC7d5Csz4YjZ2DmSrr7Jr/NgTNNq3/T1jbQe8UzOZjFAGSxOLPrOBZfTBz8jhzjK84DcGdc=@vger.kernel.org X-Gm-Message-State: AOJu0YyjZPsP9QXLTPCytn8PVtbkrJyJW0Te4qoL2m7DI4LlNuhi8CmK wmG245+FdXZF5RTlAP/OEgWPR1NKP3KGQQt1MEOiTp7LmJmxD9l3uu5v X-Gm-Gg: ATEYQzw1JPDesTEf09/pS3qIfO0wFDZQeAYG3/ulQ062wFejNa00VT15bZCx1kpXC62 yEQQ2A+CEsm/M9KtXI3KAQMojKKaIgvZNUkUuvI4W9/gDAALEeYXfCFp0xDnPBheknCrnufNA3N Me1wV5jyfAttB8qx2rxWNHrLv/Ln4SERrRWd0QYSct61neT0UYyjjxjfcCAvGR8oCfTAR8LM38w CsCXMJlFhtqThGzunmPjkV7vvxAbZsZ8nC9o2F3USl4Nkuvce2vAbO/4T+gVUlJl/eOwdURbAEd qxeqkqpOG1ZaAt+GVM/8ljMO5x5gc/swLb39Yg6zVNkO/1pgv+Zlr6npAX8+PN8lf5h70YKSBgo lDt3kdrbJkRkR2HDVnRUvjkBuA7sqIYLa8F+V8VGf7EbE96U8rSLaDvEaKylxF9+j4KS4PqlqyS 4PbRQRZ0xqCch/eJKEQ2vZgaNffZu/1SU/nF8W X-Received: by 2002:a17:90b:1e4f:b0:35a:1b43:dff1 with SMTP id 98e67ed59e1d1-35c300060damr6402909a91.12.1774714033225; Sat, 28 Mar 2026 09:07:13 -0700 (PDT) Received: from junjungu-PC.localdomain ([223.167.147.240]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-35c2ec27da0sm1988140a91.8.2026.03.28.09.07.10 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Mar 2026 09:07:13 -0700 (PDT) From: Felix Gu Date: Sun, 29 Mar 2026 00:07:06 +0800 Subject: [PATCH 1/2] spi: stm32-ospi: Fix reset control leak on probe error 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: <20260329-stm32-ospi-v1-1-142122466412@gmail.com> References: <20260329-stm32-ospi-v1-0-142122466412@gmail.com> In-Reply-To: <20260329-stm32-ospi-v1-0-142122466412@gmail.com> To: Mark Brown , Maxime Coquelin , Alexandre Torgue , Philipp Zabel , Patrice Chotard Cc: linux-spi@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Felix Gu X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1774714028; l=1079; i=ustc.gu@gmail.com; h=from:subject:message-id; bh=B2M6TmSMVm9Sf6C3C9nuArJeOUQJv3qKC5BIO5ffMLE=; b=K3icUELnLZRMgZ/cPYJO9EzPAK2OMYHOCr7hyQOJnzEc4OMrk33Ar+ZZkU3slL5LvqPmk2sLA mJOwZbw8vXjAsa1nv9Kt2X0dyD1JJSNopgTjyIp2Ct8Tin+OylPlzR4 X-Developer-Key: i=ustc.gu@gmail.com; a=ed25519; pk=fjUXwmjchVN7Ja6KGP55IXOzFeCl9edaHoQIEUA+/hw= When spi_register_controller() fails after reset_control_acquire() succeeds, the reset control is never released. This causes a resource leak in the error path. Add the missing reset_control_release() call in the error path. Fixes: cf2c3eceb757 ("spi: stm32-ospi: Make usage of reset_control_acquire/= release() API") Signed-off-by: Felix Gu Reviewed-by: Patrice Chotard --- drivers/spi/spi-stm32-ospi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-stm32-ospi.c b/drivers/spi/spi-stm32-ospi.c index acf2d182e8b1..52997c3f7174 100644 --- a/drivers/spi/spi-stm32-ospi.c +++ b/drivers/spi/spi-stm32-ospi.c @@ -960,13 +960,15 @@ static int stm32_ospi_probe(struct platform_device *p= dev) if (ret) { /* Disable ospi */ writel_relaxed(0, ospi->regs_base + OSPI_CR); - goto err_pm_resume; + goto err_reset_control; } =20 pm_runtime_put_autosuspend(ospi->dev); =20 return 0; =20 +err_reset_control: + reset_control_release(ospi->rstc); err_pm_resume: pm_runtime_put_sync_suspend(ospi->dev); =20 --=20 2.43.0 From nobody Thu Apr 2 12:31:51 2026 Received: from mail-pj1-f50.google.com (mail-pj1-f50.google.com [209.85.216.50]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 616FD33F5BE for ; Sat, 28 Mar 2026 16:07:17 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.50 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774714040; cv=none; b=q2PMdFIlrshhde8yr/Hy9Ng9BXFQXOqT9BptbNTuSNv/4CoRh8BGBaydsvP6e3ZJjaf94cRvceEbjeU91AuAOIsc7WuZA2cp2dyTjygOx27WJHjH7aMkSi1i2wXMfB4LO044XZmsSh3Tl3zc13I1Ew/+yjWNFRIxD2KaBWCVa+o= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1774714040; c=relaxed/simple; bh=g/NC5thUm9GobODU/U36/p17WTlVCj1qLtVx9sZkHSc=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=l9NlevyyK86bWZcYGwRPfMnLq3P/ZN1lEZkryF5tEy8TbDx0CUg0H4RGs9V7rReFRdEePy4UMErE/LO9P1rXqz0cFUASyUhnbsPCIu3JXGD1FUb5Uy/nhoI3xLN20A7SUgT0tjSmAvK16MHduSu9rpirRBvrp/+ZD00iUdmMdF4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=m620CFb8; arc=none smtp.client-ip=209.85.216.50 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="m620CFb8" Received: by mail-pj1-f50.google.com with SMTP id 98e67ed59e1d1-35d99031e4eso236977a91.1 for ; Sat, 28 Mar 2026 09:07:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1774714036; x=1775318836; 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=UqrrS9uvTvJ0weuIXquOC2uG3YCXwOkehaDJ4cbhf3E=; b=m620CFb86Qw+HQGwYsbXD0J6lJMiP/5bZLwlVUJcNSVFSNKp3d33P38db9EMetR5nU ZRzewV4zF3NzNz5Jc2eMNpGUsxPoB3VEqJZLwIREaAlw3bMS0eM2RTCqEnnV6BgrDTt3 wyhy/oFFTogMEEZmXcyLshJ0x1TIo+MKQZSLhWOVtf/a2J9YGPnKKNPcuXIiVi/5lvE+ UiI6J7RIZBZOj7rN9T/A9QUhlJtwNiNiqN4lHi3UwR/5vgN91vvfE2t1XoPO533FXhsp tnfGt5X4RFrtcxhYrPDZIsUlgES8cgHjff4kqRw9jz1SZl/vsbdEF530naRKWnnwh7H5 ctOQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1774714036; x=1775318836; 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=UqrrS9uvTvJ0weuIXquOC2uG3YCXwOkehaDJ4cbhf3E=; b=o/OX9ETmHM8f9ukT6g4oYWTIBPE6KfKl/aTlTv6fLlwTXFWK15c+zJ7XNRze4Pcm0v gm0DYg7zWJbNldceVY/xqKbPp1txm97I99eAyQLvZREGNAr1TOllpZ5ask9hS/8azRnK bkGCZmGmdc4H9ul0n8jYQYLd/xKBgCkXUUKB8SWrUVdWFkIpvxjbaoF9x2/6uBs76GQ3 bqQvozMZlW7ltrx5K/OhRpPD3bgv8BOTbDyPgK55dkvx/Iw1mKE73UtcnWcLqMjYoLaJ WbXGkQNbcuz/r5HoR9gtgllbMlE8XAE8YNZoUN4XU46tEl+9P8YbsP5JQqyCCUpPsAqw FKFg== X-Forwarded-Encrypted: i=1; AJvYcCWXNQuvd+D3+mqvn2ebx8ilIq/nK+F7pHrScb8ZiY7JB6w6wiR5kv7Q7nHCo+elSElwYFgIP0EYVtRj4Ss=@vger.kernel.org X-Gm-Message-State: AOJu0YxUwyCy0wXaNTV+UkJoIbNAj8rzUE/Ffeoap2lwwWj9AMYyXoKo zQbbDTkPEbSLROtsMbl72761fUHwMhPdNwUrE4CMPpUotbBSwjiKUZXJ X-Gm-Gg: ATEYQzz8G3rC0gHZBtTbyf8xZOQfe4ut4KFFqXZQY66iy65i4vCH9wlr/2Le9ho/Ttr 41QF5VaCNPhovWses0dC9KCuPb5WBXfUOXeMAFBlnbxdBahU1/3lTqdGMrFu7RNlrMgDGxUr2Yo rvomsR5+gGSugG7hnT/QWjRY0G6L91ebBU/vPG2GWx25HgSsNM9HKSAyCWb4ZLOhF6CDzdNePLQ wzN8RBUUm8oseOiMOA18QCSvWAOciiT31QYkby/QVYv46n6kW2kXL8AAWWnlPXFMFbufDj6h8ih 4U5Z7cuVXxS4dxnYzCkR1VZZK7fRpBYYxoDBIYd5J0b+CK0uuxxfYqH20Hq2mrVKEYcenFE5l2r MxV0SUXMxKkiMPmwk/T6A17Q6u9eaT1jRhDGJubVlZpcUD7olMh6e5vk9Zsm7qzAwaC+KRDCTTr GHA8CfAURhWQiqcSTMZOqSDPzf+SZaOKxopu5t X-Received: by 2002:a17:90b:390b:b0:35c:812:6126 with SMTP id 98e67ed59e1d1-35c300f9db0mr5029057a91.24.1774714036132; Sat, 28 Mar 2026 09:07:16 -0700 (PDT) Received: from junjungu-PC.localdomain ([223.167.147.240]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-35c2ec27da0sm1988140a91.8.2026.03.28.09.07.13 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 28 Mar 2026 09:07:15 -0700 (PDT) From: Felix Gu Date: Sun, 29 Mar 2026 00:07:07 +0800 Subject: [PATCH 2/2] spi: stm32-ospi: Fix DMA channel leak on stm32_ospi_dma_setup() failure 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: <20260329-stm32-ospi-v1-2-142122466412@gmail.com> References: <20260329-stm32-ospi-v1-0-142122466412@gmail.com> In-Reply-To: <20260329-stm32-ospi-v1-0-142122466412@gmail.com> To: Mark Brown , Maxime Coquelin , Alexandre Torgue , Philipp Zabel , Patrice Chotard Cc: linux-spi@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Felix Gu X-Mailer: b4 0.14.3 X-Developer-Signature: v=1; a=ed25519-sha256; t=1774714028; l=1104; i=ustc.gu@gmail.com; h=from:subject:message-id; bh=g/NC5thUm9GobODU/U36/p17WTlVCj1qLtVx9sZkHSc=; b=aSWLNSCRp0D8866dSgcbY+JT4XedGUT6QeFZ4e3z25/G+O1t9HoLZs4yvCDebAVPEe6SBW0MI wJBP5VFN2niD5tp1lOmoFBkjn9PFB5InUP/CCkXoqJ2mkl3cCcQcxGB X-Developer-Key: i=ustc.gu@gmail.com; a=ed25519; pk=fjUXwmjchVN7Ja6KGP55IXOzFeCl9edaHoQIEUA+/hw= When stm32_ospi_dma_setup() fails, the DMA channels allocated by stm32_ospi_get_resources() were never released. Add proper cleanup in the error path. Fixes: e35a7607e05d ("spi: stm32-ospi: Set DMA maxburst dynamically") Signed-off-by: Felix Gu Reviewed-by: Patrice Chotard --- drivers/spi/spi-stm32-ospi.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-stm32-ospi.c b/drivers/spi/spi-stm32-ospi.c index 52997c3f7174..34498939bcdf 100644 --- a/drivers/spi/spi-stm32-ospi.c +++ b/drivers/spi/spi-stm32-ospi.c @@ -923,7 +923,7 @@ static int stm32_ospi_probe(struct platform_device *pde= v) dma_cfg.dst_addr =3D ospi->regs_phys_base + OSPI_DR; ret =3D stm32_ospi_dma_setup(ospi, &dma_cfg); if (ret) - return ret; + goto err_dma_free; =20 mutex_init(&ospi->lock); =20 @@ -975,6 +975,7 @@ static int stm32_ospi_probe(struct platform_device *pde= v) err_pm_enable: pm_runtime_force_suspend(ospi->dev); mutex_destroy(&ospi->lock); +err_dma_free: if (ospi->dma_chtx) dma_release_channel(ospi->dma_chtx); if (ospi->dma_chrx) --=20 2.43.0