On 12/10/16 08:52 PM, Nicolai Hähnle wrote:
> On 12.10.2016 11:31, Michel Dänzer wrote:
>>
>> diff --git a/src/mesa/state_tracker/st_cb_syncobj.c
>> b/src/mesa/state_tracker/st_cb_syncobj.c
>> index 123925a..de01880 100644
>> --- a/src/mesa/state_tracker/st_cb_syncobj.c
>> +++ b/src/mesa/state_tracker/st_cb_syncobj.c
>> @@ -81,17 +81,22 @@ static void st_check_sync(struct gl_context *ctx,
>> struct gl_sync_object *obj)
>>     struct pipe_context *pipe = st_context(ctx)->pipe;
>>     struct pipe_screen *screen = pipe->screen;
>>     struct st_sync_object *so = (struct st_sync_object*)obj;
>> +   struct pipe_fence_handle *fence = NULL;
>> +
>> +   screen->fence_reference(screen, &fence, so->fence);
> 
> This should probably really use p_atomic_read (or some kind of READ_ONCE
> macro if we had it) to make the intention clear, but I'm not sure
> whether that would compile everywhere since so->fence is a pointer.
> 
> In practice it doesn't matter, because the function call is a sufficient
> barrier. So either way,
> 
> Reviewed-by: Nicolai Hähnle <nicolai.haeh...@amd.com>

Thanks, but unfortunately,
https://bugs.freedesktop.org/show_bug.cgi?id=98172#c5 shows that this
really isn't good enough yet. Back to the drawing board...


-- 
Earthling Michel Dänzer               |               http://www.amd.com
Libre software enthusiast             |             Mesa and X developer

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to