Skip to content

Commit

Permalink
drm/exynos: Fix error routine to getting dma addr.
Browse files Browse the repository at this point in the history
This patch fixes error routine when g2d_userptr_get_dma_add is failed.
When sg_alloc_table_from_pages() is failed, it doesn't call
sg_free_table() anymore.

Signed-off-by: YoungJun Cho <yj44.cho@samsung.com>
Signed-off-by: Inki Dae <inki.dae@samsung.com>
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
  • Loading branch information
YoungJun Cho authored and Inki Dae committed Mar 20, 2013
1 parent e2779e1 commit 067ed33
Showing 1 changed file with 4 additions and 2 deletions.
6 changes: 4 additions & 2 deletions drivers/gpu/drm/exynos/exynos_drm_g2d.c
Original file line number Diff line number Diff line change
Expand Up @@ -450,7 +450,7 @@ static dma_addr_t *g2d_userptr_get_dma_addr(struct drm_device *drm_dev,
DMA_BIDIRECTIONAL);
if (ret < 0) {
DRM_ERROR("failed to map sgt with dma region.\n");
goto err_free_sgt;
goto err_sg_free_table;
}

g2d_userptr->dma_addr = sgt->sgl[0].dma_address;
Expand All @@ -467,8 +467,10 @@ static dma_addr_t *g2d_userptr_get_dma_addr(struct drm_device *drm_dev,

return &g2d_userptr->dma_addr;

err_free_sgt:
err_sg_free_table:
sg_free_table(sgt);

err_free_sgt:
kfree(sgt);
sgt = NULL;

Expand Down

0 comments on commit 067ed33

Please sign in to comment.