[PATCH 4.6 142/203] drm/vmwgfx: Fix error paths when mapping framebuffer

From: Greg Kroah-Hartman
Date: Mon Jul 25 2016 - 18:05:59 EST


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

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

From: Sinclair Yeh <syeh@xxxxxxxxxx>

commit 58541f7a6458e17ab417321b284f0090f530aa91 upstream.

Rather than returning immediately, make sure to unlock the
mutexes first.

Signed-off-by: Sinclair Yeh <syeh@xxxxxxxxxx>
Reviewed-by: Charmaine Lee <charmainel@xxxxxxxxxx>
Reported-by: Emil Velikov <emil.l.velikov@xxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

---
drivers/gpu/drm/vmwgfx/vmwgfx_fb.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

--- a/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c
+++ b/drivers/gpu/drm/vmwgfx/vmwgfx_fb.c
@@ -589,7 +589,7 @@ static int vmw_fb_set_par(struct fb_info
ret = vfb->pin(vfb);
if (ret) {
DRM_ERROR("Could not pin the fbdev framebuffer.\n");
- return ret;
+ goto out_unlock;
}

ret = ttm_bo_kmap(&par->vmw_bo->base, 0,
@@ -597,7 +597,7 @@ static int vmw_fb_set_par(struct fb_info
if (ret) {
vfb->unpin(vfb);
DRM_ERROR("Could not map the fbdev framebuffer.\n");
- return ret;
+ goto out_unlock;
}

par->bo_ptr = ttm_kmap_obj_virtual(&par->map, &par->bo_iowrite);