[Mesa-dev] [PATCH 1/2] st/dri: don't use _ctx in client_wait_sync
Albert Freeman
albertwdfreeman at gmail.com
Sat Sep 26 23:02:21 PDT 2015
On 25 September 2015 at 23:49, Marek Olšák <maraeo at gmail.com> wrote:
> From: Marek Olšák <marek.olsak at amd.com>
>
> Not needed and it can be NULL.
>
> Cc: 10.6 11.0 <mesa-stable at lists.freedesktop.org>
> ---
> src/gallium/state_trackers/dri/dri2.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/src/gallium/state_trackers/dri/dri2.c b/src/gallium/state_trackers/dri/dri2.c
> index 91b4431..ab940e4 100644
> --- a/src/gallium/state_trackers/dri/dri2.c
> +++ b/src/gallium/state_trackers/dri/dri2.c
> @@ -1293,6 +1293,7 @@ dri2_load_opencl_interop(struct dri_screen *screen)
> }
>
> struct dri2_fence {
> + struct dri_screen *driscreen;
> struct pipe_fence_handle *pipe_fence;
> void *cl_event;
> };
> @@ -1313,6 +1314,7 @@ dri2_create_fence(__DRIcontext *_ctx)
> return NULL;
> }
>
> + fence->driscreen = dri_screen(_ctx->driScreenPriv);
> return fence;
> }
>
> @@ -1360,9 +1362,9 @@ static GLboolean
> dri2_client_wait_sync(__DRIcontext *_ctx, void *_fence, unsigned flags,
> uint64_t timeout)
> {
> - struct dri_screen *driscreen = dri_screen(_ctx->driScreenPriv);
> - struct pipe_screen *screen = driscreen->base.screen;
> struct dri2_fence *fence = (struct dri2_fence*)_fence;
> + struct dri_screen *driscreen = fence->driscreen;
> + struct pipe_screen *screen = driscreen->base.screen;
>
> /* No need to flush. The context was flushed when the fence was created. */
>
> --
> 2.1.4
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
I think this is required (it is applied on top of your patch against mesa git):
diff --git a/src/gallium/state_trackers/dri/dri2.c
b/src/gallium/state_trackers/dri/dri2.c
index ab940e4..712203b 100644
--- a/src/gallium/state_trackers/dri/dri2.c
+++ b/src/gallium/state_trackers/dri/dri2.c
@@ -1338,6 +1338,7 @@ dri2_get_fence_from_cl_event(__DRIscreen
*_screen, intptr_t cl_event)
return NULL;
}
+ fence->driscreen = driscreen;
return fence;
}
otherwise
Reviewed-by: Albert Freeman <albertwdfreeman at gmail.com>
More information about the mesa-dev
mailing list