diff options
author | Maíra Canal <mcanal@igalia.com> | 2024-09-23 10:55:07 -0300 |
---|---|---|
committer | Maíra Canal <mcanal@igalia.com> | 2024-09-25 08:40:19 -0300 |
commit | 56cf76ed784fe5347c9305f7f0f3d0f9cb8d8a3b (patch) | |
tree | 82b9b49ae1a8b9d22ef0d85cbb7ebadb7941660f /drivers/gpu | |
parent | d2fb8811108b2c1285c56f4fba4fff8fe3525593 (diff) |
drm/v3d: Fix return if scheduler initialization fails
If the scheduler initialization fails, GEM initialization must fail as
well. Therefore, if `v3d_sched_init()` fails, free the DMA memory
allocated and return the error value in `v3d_gem_init()`.
Signed-off-by: Maíra Canal <mcanal@igalia.com>
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20240923141348.2422499-4-mcanal@igalia.com
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/v3d/v3d_gem.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/v3d/v3d_gem.c b/drivers/gpu/drm/v3d/v3d_gem.c index da8faf3b9011..b3b76332f2c5 100644 --- a/drivers/gpu/drm/v3d/v3d_gem.c +++ b/drivers/gpu/drm/v3d/v3d_gem.c @@ -291,8 +291,9 @@ v3d_gem_init(struct drm_device *dev) ret = v3d_sched_init(v3d); if (ret) { drm_mm_takedown(&v3d->mm); - dma_free_coherent(v3d->drm.dev, 4096 * 1024, (void *)v3d->pt, + dma_free_coherent(v3d->drm.dev, pt_size, (void *)v3d->pt, v3d->pt_paddr); + return ret; } return 0; |