Commit d9186fae authored by Ian Forbes's avatar Ian Forbes Committed by Zack Rusin
Browse files

drm/vmwgfx: Fix KMS with 3D on HW version 10



HW version 10 does not have GB Surfaces so there is no backing buffer for
surface backed FBs. This would result in a nullptr dereference and crash
the driver causing a black screen.

Fixes: 96554415 ("drm/vmwgfx: Refactor cursor handling")
Signed-off-by: default avatarIan Forbes <ian.forbes@broadcom.com>
Reviewed-by: default avatarZack Rusin <zack.rusin@broadcom.com>
Signed-off-by: default avatarZack Rusin <zack.rusin@broadcom.com>
Link: https://patch.msgid.link/20251114203703.1946616-1-ian.forbes@broadcom.com
parent 14adddc6
Loading
Loading
Loading
Loading
+8 −6
Original line number Diff line number Diff line
@@ -766,6 +766,7 @@ static struct drm_framebuffer *vmw_kms_fb_create(struct drm_device *dev,
		return ERR_PTR(ret);
	}

	if (bo) {
		ttm_bo_reserve(&bo->tbo, false, false, NULL);
		ret = vmw_bo_dirty_add(bo);
		if (!ret && surface && surface->res.func->dirty_alloc) {
@@ -773,6 +774,7 @@ static struct drm_framebuffer *vmw_kms_fb_create(struct drm_device *dev,
			ret = surface->res.func->dirty_alloc(&surface->res);
		}
		ttm_bo_unreserve(&bo->tbo);
	}

	return &vfb->base;
}