[PATCH 4.9 11/69] drm/etnaviv: fix missing unlock on error in etnaviv_gpu_submit()

From: Greg Kroah-Hartman
Date: Wed Apr 19 2017 - 10:43:55 EST


4.9-stable review patch. If anyone has any objections, please let me know.

------------------

From: Wei Yongjun <weiyongjun1@xxxxxxxxxx>

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@xxxxxxxxxx>
Signed-off-by: Lucas Stach <l.stach@xxxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
drivers/gpu/drm/etnaviv/etnaviv_gpu.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

--- 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_gp
if (!fence) {
event_free(gpu, event);
ret = -ENOMEM;
- goto out_pm_put;
+ goto out_unlock;
}

gpu->event[event].fence = fence;
@@ -1345,6 +1345,7 @@ int etnaviv_gpu_submit(struct etnaviv_gp
hangcheck_timer_reset(gpu);
ret = 0;

+out_unlock:
mutex_unlock(&gpu->lock);

out_pm_put: