public inbox for linux-tegra@vger.kernel.org
 help / color / mirror / Atom feed
From: Mikko Perttunen <cyndis@kapsi.fi>
To: Yang Yingliang <yangyingliang@huawei.com>,
	linux-tegra@vger.kernel.org, thierry.reding@gmail.com,
	airlied@gmail.com, daniel@ffwll.ch, mperttunen@nvidia.com
Subject: Re: [PATCH resend] gpu: host1x: fix error return code in host1x_memory_context_list_init()
Date: Fri, 25 Nov 2022 18:00:51 +0200	[thread overview]
Message-ID: <6cf63d07-9a83-0397-9148-5775d5a4417e@kapsi.fi> (raw)
In-Reply-To: <20221124080559.3592650-1-yangyingliang@huawei.com>

On 11/24/22 10:05, Yang Yingliang wrote:
> If context device has no IOMMU, the 'cdl->devs' is freed in error path,
> but host1x_memory_context_list_init() doesn't return an error code, so
> the module can be loaded successfully, when it's unloading, the
> host1x_memory_context_list_free() is called in host1x_remove(), it will
> cause double free. Return an error code to fix this.
> 
> Fixes: 8aa5bcb61612 ("gpu: host1x: Add context device management code")
> Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
> ---
> The previous patch link:
> https://lore.kernel.org/lkml/20220714031123.2154506-1-yangyingliang@huawei.com/
> ---
>   drivers/gpu/host1x/context.c | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/gpu/host1x/context.c b/drivers/gpu/host1x/context.c
> index b08cf11f9a66..5cf9b98bedd0 100644
> --- a/drivers/gpu/host1x/context.c
> +++ b/drivers/gpu/host1x/context.c
> @@ -74,6 +74,7 @@ int host1x_memory_context_list_init(struct host1x *host1x)
>   		if (!fwspec || !device_iommu_mapped(&ctx->dev)) {
>   			dev_err(host1x->dev, "Context device %d has no IOMMU!\n", i);
>   			device_del(&ctx->dev);
> +			err = -EOPNOTSUPP;
>   			goto del_devices;
>   		}
>   

One side effect of this patch would be that if IOMMU is disabled on a 
system with context devices defined, Host1x won't work at all (currently 
probe continues and it works though without context isolation).

I'm not sure if that's something anyone is likely to run into, but it 
might be better to get rid of one of the frees instead.

If you can update with that that'd be great, or I can put it onto the 
TODO list.

Thanks,
Mikko

  reply	other threads:[~2022-11-25 16:50 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-11-24  8:05 [PATCH resend] gpu: host1x: fix error return code in host1x_memory_context_list_init() Yang Yingliang
2022-11-25 16:00 ` Mikko Perttunen [this message]
2022-11-26  2:39   ` Yang Yingliang

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=6cf63d07-9a83-0397-9148-5775d5a4417e@kapsi.fi \
    --to=cyndis@kapsi.fi \
    --cc=airlied@gmail.com \
    --cc=daniel@ffwll.ch \
    --cc=linux-tegra@vger.kernel.org \
    --cc=mperttunen@nvidia.com \
    --cc=thierry.reding@gmail.com \
    --cc=yangyingliang@huawei.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox