1. 07 3月, 2011 1 次提交
  2. 22 2月, 2011 2 次提交
    • C
      drm/i915: Use a device flag for non-interruptible phases · ce453d81
      Chris Wilson 提交于
      The code paths for modesetting are growing in complexity as we may need
      to move the buffers around in order to fit the scanout in the aperture.
      Therefore we face a choice as to whether to thread the interruptible status
      through the entire pinning and unbinding code paths or to add a flag to
      the device when we may not be interrupted by a signal. This does the
      latter and so fixes a few instances of modesetting failures under stress.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      ce453d81
    • C
      drm/i915: Protect against drm_gem_object not being the first member · c8725226
      Chris Wilson 提交于
      Dave Airlie spotted that we had a potential bug should we ever rearrange
      the drm_i915_gem_object so not the base drm_gem_object was not its first
      member. He noticed that we often convert the return of
      drm_gem_object_lookup() immediately into drm_i915_gem_object and then
      check the result for nullity. This is only valid when the base object is
      the first member and so the superobject has the same address. Play safe
      instead and use the compiler to convert back to the original return
      address for sanity testing.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      c8725226
  3. 12 2月, 2011 1 次提交
  4. 07 2月, 2011 4 次提交
  5. 27 1月, 2011 2 次提交
  6. 25 1月, 2011 2 次提交
  7. 23 1月, 2011 1 次提交
  8. 12 1月, 2011 5 次提交
  9. 20 12月, 2010 1 次提交
  10. 14 12月, 2010 2 次提交
  11. 07 12月, 2010 1 次提交
  12. 06 12月, 2010 3 次提交
  13. 05 12月, 2010 1 次提交
  14. 02 12月, 2010 4 次提交
    • C
      drm/i915: Kill the get_fence tracepoint · 60de2ba5
      Chris Wilson 提交于
      As the tracepoint is now decoupled from when the actual register is
      assigned and was never complemented by detailing when the object lost
      its fence, it has outlived its limited usefulness. Profiling the actual
      stalls is a far more profitable venture anyway.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      60de2ba5
    • C
      drm/i915: Remove inactive LRU tracking from set_domain_ioctl · c6748e09
      Chris Wilson 提交于
      As the userspace mappings are torn down on every GPU write, we prefer to
      track when the buffer is activated (via a fresh i915_gem_fault). This
      makes the LRU conceptually simpler. With coherent mappings, the
      remaining use-case for set_domain_ioctl is GPU synchronisation.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      c6748e09
    • C
      drm/i915: Pipelined fencing [infrastructure] · d9e86c0e
      Chris Wilson 提交于
      With this change, every batchbuffer can use all available fences (save
      pinned and scanout, of course) without ever stalling the gpu!
      
      In theory. Currently the actual pipelined update of the register is
      disabled due to some stability issues. However, just the deferred update
      is a significant win.
      
      Based on a series of patches by Daniel Vetter.
      
      The premise is that before every access to a buffer through the GTT we
      have to declare whether we need a register or not. If the access is by
      the GPU, a pipelined update to the register is made via the ringbuffer,
      and we track the last seqno of the batches that access it. If by the
      CPU we wait for the last GPU access and update the register (either
      to clear or to set it for the current buffer).
      
      One advantage of being able to pipeline changes is that we can defer the
      actual updating of the fence register until we first need to access the
      object through the GTT, i.e. we can eliminate the stall on set_tiling.
      This is important as the userspace bo cache does not track the tiling
      status of active buffers which generate frequent stalls on gen3 when
      enabling tiling for an already bound buffer.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Reviewed-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      d9e86c0e
    • C
  15. 29 11月, 2010 1 次提交
  16. 28 11月, 2010 1 次提交
  17. 26 11月, 2010 2 次提交
  18. 25 11月, 2010 4 次提交
  19. 24 11月, 2010 2 次提交