diff options
author | Jason Ekstrand <jason@jlekstrand.net> | 2021-06-24 12:47:32 -0500 |
---|---|---|
committer | Christian König <christian.koenig@amd.com> | 2021-07-12 13:34:49 +0200 |
commit | ffe000217c5068c5da07ccb1c0f8cce7ad767435 (patch) | |
tree | db4fdd7ea3cb5c22f6107a66b619c6c725990d2e /drivers/gpu/drm/amd/amdgpu/amdgpu_jpeg.c | |
parent | 1988e0d84161dabd99d1c27033fbd6ee439bf432 (diff) |
dma-buf/sync_file: Don't leak fences on merge failure
Each add_fence() call does a dma_fence_get() on the relevant fence. In
the error path, we weren't calling dma_fence_put() so all those fences
got leaked. Also, in the krealloc_array failure case, we weren't
freeing the fences array. Instead, ensure that i and fences are always
zero-initialized and dma_fence_put() all the fences and kfree(fences) on
every error path.
Signed-off-by: Jason Ekstrand <jason@jlekstrand.net>
Reviewed-by: Christian König <christian.koenig@amd.com>
Fixes: a02b9dc90d84 ("dma-buf/sync_file: refactor fence storage in struct sync_file")
Cc: Gustavo Padovan <gustavo.padovan@collabora.co.uk>
Cc: Christian König <christian.koenig@amd.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20210624174732.1754546-1-jason@jlekstrand.net
Signed-off-by: Christian König <christian.koenig@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_jpeg.c')
0 files changed, 0 insertions, 0 deletions