]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
drm/etnaviv: fix missing unlock on error in etnaviv_gpu_submit()
authorWei Yongjun <weiyongjun1@huawei.com>
Wed, 12 Apr 2017 00:31:16 +0000 (00:31 +0000)
committerLucas Stach <l.stach@pengutronix.de>
Wed, 12 Apr 2017 15:22:05 +0000 (17:22 +0200)
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")
CC: stable@vger.kernel.org #4.9+
Signed-off-by: Wei Yongjun <weiyongjun1@huawei.com>
Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
drivers/gpu/drm/etnaviv/etnaviv_gpu.c

index da48819ff2e6550c0a7d6206569d85e8a880c0c5..b78d9239e48fb0fc3b02129fe97795a6b94bed70 100644 (file)
@@ -1317,7 +1317,7 @@ int etnaviv_gpu_submit(struct etnaviv_gpu *gpu,
        if (!fence) {
                event_free(gpu, event);
                ret = -ENOMEM;
        if (!fence) {
                event_free(gpu, event);
                ret = -ENOMEM;
-               goto out_pm_put;
+               goto out_unlock;
        }
 
        gpu->event[event].fence = fence;
        }
 
        gpu->event[event].fence = fence;
@@ -1357,6 +1357,7 @@ int etnaviv_gpu_submit(struct etnaviv_gpu *gpu,
        hangcheck_timer_reset(gpu);
        ret = 0;
 
        hangcheck_timer_reset(gpu);
        ret = 0;
 
+out_unlock:
        mutex_unlock(&gpu->lock);
 
 out_pm_put:
        mutex_unlock(&gpu->lock);
 
 out_pm_put: