diff options
author | Dave Airlie <airlied@redhat.com> | 2017-03-10 05:13:04 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2017-12-20 12:07:19 +0300 |
commit | 063c753ef78bee13265bf02df185704e8fdff1f9 (patch) | |
tree | 3c14051a80528bb296457ecbfb75092cb3dc2877 /drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | |
parent | 3d40364d333e3de4cc2e49c80ad8ddb242c46315 (diff) | |
download | linux-063c753ef78bee13265bf02df185704e8fdff1f9.tar.xz |
drm/amdgpu: fix parser init error path to avoid crash in parser fini
[ Upstream commit 607523d19c9d67ba4cf7bdaced644f11ed04992c ]
If we don't reset the chunk info in the error path, the subsequent
fini path will double free.
Reviewed-by: Christian König <christian.koenig@amd.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Signed-off-by: Sasha Levin <alexander.levin@verizon.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c index bfb4b91869e7..f26d1fd53bef 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c @@ -240,6 +240,8 @@ free_partial_kdata: for (; i >= 0; i--) drm_free_large(p->chunks[i].kdata); kfree(p->chunks); + p->chunks = NULL; + p->nchunks = 0; put_ctx: amdgpu_ctx_put(p->ctx); free_chunk: |