aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWei Yongjun <weiyongjun1@huawei.com>2017-04-11 20:31:16 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2017-04-21 03:31:19 -0400
commitfd3be7eaff1441cbc5c0a3abf50b519d721d6c0c (patch)
treeaabf2657e78218d47fb5acc4a8d87f81bf99f705
parente6bcbdc59356b8c6e01df435bacf0aec452122e6 (diff)
drm/etnaviv: fix missing unlock on error in etnaviv_gpu_submit()
commit 45abdf35cf82e4270328c7237e7812de960ac560 upstream. Add the missing unlock before return from function etnaviv_gpu_submit() in the error handling case. lst: fixed label name. Fixes: f3cd1b064f11 ("drm/etnaviv: (re-)protect fence allocation with GPU mutex") Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com> Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/gpu/drm/etnaviv/etnaviv_gpu.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c
index b87d27859141..a336754698f8 100644
--- a/drivers/gpu/drm/etnaviv/etnaviv_gpu.c
+++ b/drivers/gpu/drm/etnaviv/etnaviv_gpu.c
@@ -1305,7 +1305,7 @@ int etnaviv_gpu_submit(struct etnaviv_gpu *gpu,
1305 if (!fence) { 1305 if (!fence) {
1306 event_free(gpu, event); 1306 event_free(gpu, event);
1307 ret = -ENOMEM; 1307 ret = -ENOMEM;
1308 goto out_pm_put; 1308 goto out_unlock;
1309 } 1309 }
1310 1310
1311 gpu->event[event].fence = fence; 1311 gpu->event[event].fence = fence;
@@ -1345,6 +1345,7 @@ int etnaviv_gpu_submit(struct etnaviv_gpu *gpu,
1345 hangcheck_timer_reset(gpu); 1345 hangcheck_timer_reset(gpu);
1346 ret = 0; 1346 ret = 0;
1347 1347
1348out_unlock:
1348 mutex_unlock(&gpu->lock); 1349 mutex_unlock(&gpu->lock);
1349 1350
1350out_pm_put: 1351out_pm_put: