Re: [PATCH 2/9] drm/syncobj: Lock around drm_syncobj::fence

2017-08-10 Thread Chris Wilson
Quoting Jason Ekstrand (2017-08-10 01:31:52) > > > On Wed, Aug 9, 2017 at 2:21 PM, Chris Wilson wrote: > > Quoting Jason Ekstrand (2017-08-08 23:46:02) > > The atomic exchange operation we were doing before in replace_fence was > > sufficient for the case where it raced with itself.

Re: [PATCH 2/9] drm/syncobj: Lock around drm_syncobj::fence

2017-08-10 Thread Chris Wilson
Quoting Jason Ekstrand (2017-08-10 01:31:52) > > > On Wed, Aug 9, 2017 at 2:21 PM, Chris Wilson wrote: > > Quoting Jason Ekstrand (2017-08-08 23:46:02) > > The atomic exchange operation we were doing before in replace_fence was > > sufficient for the case where it raced with itself.

Re: [PATCH 2/9] drm/syncobj: Lock around drm_syncobj::fence

2017-08-09 Thread Jason Ekstrand
On Wed, Aug 9, 2017 at 2:21 PM, Chris Wilson wrote: > Quoting Jason Ekstrand (2017-08-08 23:46:02) > > The atomic exchange operation we were doing before in replace_fence was > > sufficient for the case where it raced with itself. However, if you > > have a race between a replace_fence and dma_f

Re: [PATCH 2/9] drm/syncobj: Lock around drm_syncobj::fence

2017-08-09 Thread Chris Wilson
Quoting Jason Ekstrand (2017-08-08 23:46:02) > The atomic exchange operation we were doing before in replace_fence was > sufficient for the case where it raced with itself. However, if you > have a race between a replace_fence and dma_fence_get(syncobj->fence), > you may end up with the entire rep

[PATCH 2/9] drm/syncobj: Lock around drm_syncobj::fence

2017-08-08 Thread Jason Ekstrand
The atomic exchange operation we were doing before in replace_fence was sufficient for the case where it raced with itself. However, if you have a race between a replace_fence and dma_fence_get(syncobj->fence), you may end up with the entire replace_fence happening between the point in time where