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

Greg Kroah-Hartman
2017-04-19T14:38:17Z

From: Wei Yongjun <weiyongjun1@huawei.com>

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>

---
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
@@ -1309,7 +1309,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;
@@ -1349,6 +1349,7 @@ int etnaviv_gpu_submit(struct etnaviv_gp
hangcheck_timer_reset(gpu);
ret = 0;

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