From: Alexandros Frantzis Date: Wed, 5 Jun 2019 07:32:01 +0000 (+0300) Subject: virgl: Don't try to use cached resources for legacy fences X-Git-Tag: upstream/19.3.0~5689 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=e0ffcdf16a61a41f2a2e4e2c0dca94cf506ba17e;p=platform%2Fupstream%2Fmesa.git virgl: Don't try to use cached resources for legacy fences Resources for fences should not be from the cache, since we are basing the fence status on the resource creation busy status. Signed-off-by: Alexandros Frantzis Reviewed-by: Chia-I Wu --- diff --git a/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c b/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c index 48ee73f..ded1293 100644 --- a/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c +++ b/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c @@ -739,7 +739,10 @@ virgl_drm_fence_create_legacy(struct virgl_winsys *vws) return NULL; fence->fd = -1; - fence->hw_res = virgl_drm_winsys_resource_cache_create(vws, PIPE_BUFFER, + /* Resources for fences should not be from the cache, since we are basing + * the fence status on the resource creation busy status. + */ + fence->hw_res = virgl_drm_winsys_resource_create(vws, PIPE_BUFFER, PIPE_FORMAT_R8_UNORM, VIRGL_BIND_CUSTOM, 8, 1, 1, 0, 0, 0, 8); if (!fence->hw_res) { FREE(fence); diff --git a/src/gallium/winsys/virgl/vtest/virgl_vtest_winsys.c b/src/gallium/winsys/virgl/vtest/virgl_vtest_winsys.c index 24b5744..0273d96 100644 --- a/src/gallium/winsys/virgl/vtest/virgl_vtest_winsys.c +++ b/src/gallium/winsys/virgl/vtest/virgl_vtest_winsys.c @@ -589,11 +589,14 @@ virgl_vtest_fence_create(struct virgl_winsys *vws) { struct virgl_hw_res *res; - res = virgl_vtest_winsys_resource_cache_create(vws, - PIPE_BUFFER, - PIPE_FORMAT_R8_UNORM, - VIRGL_BIND_CUSTOM, - 8, 1, 1, 0, 0, 0, 8); + /* Resources for fences should not be from the cache, since we are basing + * the fence status on the resource creation busy status. + */ + res = virgl_vtest_winsys_resource_create(vws, + PIPE_BUFFER, + PIPE_FORMAT_R8_UNORM, + VIRGL_BIND_CUSTOM, + 8, 1, 1, 0, 0, 0, 8); return (struct pipe_fence_handle *)res; }