[PATCH] drm:amd:amdgpu: Fix missing bo unlock in failure path
Christian König
christian.koenig at amd.com
Mon Apr 24 07:07:02 UTC 2023
Am 24.04.23 um 07:59 schrieb Sukrut Bellary:
> smatch warning - inconsistent handling of buffer object reserve
> and unreserve.
>
> Signed-off-by: Sukrut Bellary <sukrut.bellary at linux.com>
For now that patch is Reviewed-by: Christian König
<christian.koenig at amd.com>.
But for the record mapping/unmapping the MQD like this is a very bad
idea in the first place.
We could need to shuffle memory around for that during resume and that
is not something we really want to do.
Christian.
> ---
> drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> index 278416acf060..5de44d7e92de 100644
> --- a/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> +++ b/drivers/gpu/drm/amd/amdgpu/gfx_v8_0.c
> @@ -4686,8 +4686,10 @@ static int gfx_v8_0_kiq_resume(struct amdgpu_device *adev)
> return r;
>
> r = amdgpu_bo_kmap(ring->mqd_obj, &ring->mqd_ptr);
> - if (unlikely(r != 0))
> + if (unlikely(r != 0)) {
> + amdgpu_bo_unreserve(ring->mqd_obj);
> return r;
> + }
>
> gfx_v8_0_kiq_init_queue(ring);
> amdgpu_bo_kunmap(ring->mqd_obj);
More information about the dri-devel
mailing list