diff options
author | Jakob Bornecrantz <jakob@tungstengraphics.com> | 2008-04-08 17:24:33 +0200 |
---|---|---|
committer | Jakob Bornecrantz <jakob@tungstengraphics.com> | 2008-04-08 17:24:33 +0200 |
commit | 1d43a8b25513866d67b5b16ae1945d6e9d95743d (patch) | |
tree | 6bb0d0a238e5b8f522992629ac110ec798fb036f /src/gallium/winsys/dri/intel/intel_winsys_i915.c | |
parent | 2dd6022e65972b0706011734b68da4e9177b05c3 (diff) |
i915: Fixed fence related problems
Diffstat (limited to 'src/gallium/winsys/dri/intel/intel_winsys_i915.c')
-rw-r--r-- | src/gallium/winsys/dri/intel/intel_winsys_i915.c | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/src/gallium/winsys/dri/intel/intel_winsys_i915.c b/src/gallium/winsys/dri/intel/intel_winsys_i915.c index ae3e9654d3..a35825d36a 100644 --- a/src/gallium/winsys/dri/intel/intel_winsys_i915.c +++ b/src/gallium/winsys/dri/intel/intel_winsys_i915.c @@ -113,10 +113,10 @@ static void intel_i915_batch_reloc( struct i915_winsys *sws, delta ); #else /* new */ intel_offset_relocation( intel->batch, - delta, - dri_bo( buf ), - flags, - mask ); + delta, + dri_bo( buf ), + flags, + mask ); #endif } @@ -132,9 +132,13 @@ static void intel_i915_batch_flush( struct i915_winsys *sws, struct pipe_fence_handle *pipe; } fu; + if (fence) + assert(!*fence); + fu.dri = intel_batchbuffer_flush( intel->batch ); - if (!fu.dri && fence) { + if (!fu.dri) { + assert(0); *fence = NULL; return; } @@ -143,11 +147,9 @@ static void intel_i915_batch_flush( struct i915_winsys *sws, if (fence) *fence = fu.pipe; else - iws->pws->fence_reference(iws->pws, &fu.dri, NULL); + driFenceUnReference(&fu.dri); } - -// if (0) intel_i915_batch_wait_idle( sws ); } |