From: Mathieu Poirier <mathieu.poirier@linaro.org>
To: Aleksandr Mishin <amishin@t-argos.ru>
Cc: Peng Fan <peng.fan@nxp.com>,
Bjorn Andersson <andersson@kernel.org>,
Shawn Guo <shawnguo@kernel.org>,
Sascha Hauer <s.hauer@pengutronix.de>,
Pengutronix Kernel Team <kernel@pengutronix.de>,
Fabio Estevam <festevam@gmail.com>,
linux-remoteproc@vger.kernel.org, imx@lists.linux.dev,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, lvc-project@linuxtesting.org,
stable@vger.kernel.org
Subject: Re: [PATCH] remoteproc: imx_rproc: Fix refcount mistake in imx_rproc_addr_init
Date: Mon, 17 Jun 2024 08:42:16 -0600 [thread overview]
Message-ID: <ZnBLSG/Yy1E4A+Og@p14s> (raw)
In-Reply-To: <20240612131714.12907-1-amishin@t-argos.ru>
On Wed, Jun 12, 2024 at 04:17:14PM +0300, Aleksandr Mishin wrote:
> In imx_rproc_addr_init() strcmp() is performed over the node after the
> of_node_put() is performed over it.
> Fix this error by moving of_node_put() calls.
>
> Found by Linux Verification Center (linuxtesting.org) with SVACE.
>
> Fixes: 5e4c1243071d ("remoteproc: imx_rproc: support remote cores booted before Linux Kernel")
> Cc: stable@vger.kernel.org
> Signed-off-by: Aleksandr Mishin <amishin@t-argos.ru>
> ---
> drivers/remoteproc/imx_rproc.c | 8 ++++++--
> 1 file changed, 6 insertions(+), 2 deletions(-)
>
Applied.
Thanks,
Mathieu
> diff --git a/drivers/remoteproc/imx_rproc.c b/drivers/remoteproc/imx_rproc.c
> index 39eacd90af14..144c8e9a642e 100644
> --- a/drivers/remoteproc/imx_rproc.c
> +++ b/drivers/remoteproc/imx_rproc.c
> @@ -734,25 +734,29 @@ static int imx_rproc_addr_init(struct imx_rproc *priv,
> continue;
> }
> err = of_address_to_resource(node, 0, &res);
> - of_node_put(node);
> if (err) {
> dev_err(dev, "unable to resolve memory region\n");
> + of_node_put(node);
> return err;
> }
>
> - if (b >= IMX_RPROC_MEM_MAX)
> + if (b >= IMX_RPROC_MEM_MAX) {
> + of_node_put(node);
> break;
> + }
>
> /* Not use resource version, because we might share region */
> priv->mem[b].cpu_addr = devm_ioremap_wc(&pdev->dev, res.start, resource_size(&res));
> if (!priv->mem[b].cpu_addr) {
> dev_err(dev, "failed to remap %pr\n", &res);
> + of_node_put(node);
> return -ENOMEM;
> }
> priv->mem[b].sys_addr = res.start;
> priv->mem[b].size = resource_size(&res);
> if (!strcmp(node->name, "rsc-table"))
> priv->rsc_table = priv->mem[b].cpu_addr;
> + of_node_put(node);
> b++;
> }
>
> --
> 2.30.2
>
>
prev parent reply other threads:[~2024-06-17 14:42 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-12 13:17 [PATCH] remoteproc: imx_rproc: Fix refcount mistake in imx_rproc_addr_init Aleksandr Mishin
2024-06-17 14:42 ` Mathieu Poirier [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZnBLSG/Yy1E4A+Og@p14s \
--to=mathieu.poirier@linaro.org \
--cc=amishin@t-argos.ru \
--cc=andersson@kernel.org \
--cc=festevam@gmail.com \
--cc=imx@lists.linux.dev \
--cc=kernel@pengutronix.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-remoteproc@vger.kernel.org \
--cc=lvc-project@linuxtesting.org \
--cc=peng.fan@nxp.com \
--cc=s.hauer@pengutronix.de \
--cc=shawnguo@kernel.org \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.