Browse Source

drm/vmwgfx: Fix error paths when mapping framebuffer

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

Signed-off-by: Sinclair Yeh <syeh@vmware.com>
Reviewed-by: Charmaine Lee <charmainel@vmware.com>
Reported-by: Emil Velikov <emil.l.velikov@gmail.com>
Cc: <stable@vger.kernel.org>
Sinclair Yeh 9 years ago
parent
commit
58541f7a64
1 changed files with 2 additions and 2 deletions
  1. 2 2
      drivers/gpu/drm/vmwgfx/vmwgfx_fb.c

+ 2 - 2
drivers/gpu/drm/vmwgfx/vmwgfx_fb.c

@@ -589,7 +589,7 @@ static int vmw_fb_set_par(struct fb_info *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 *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);