1. 25 7月, 2012 1 次提交
    • C
      drm/i915: Flush the context object from the CPU caches upon switching · d3373a24
      Chris Wilson 提交于
      The issue is that we stale data in the CPU caches, when we come to
      swap-out the object, the CPU may short-circuit the reads from those
      cacheline and so corrupt the context object.
      
      Secondary, leaving the context object as being marked in the CPU write
      domain whilst on the GPU active list is a bad idea and will throw
      warnings later.
      
      Note: Thanks to calling set_to_gtt_domain with write = false and not
      setting any gpu write domain when putting a context object onto the
      active list (when we switch away from it) the set_to_gtt_domain call
      won't block.
      Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Reviewed-by: NBen Widawsky <ben@bwidawsk.net>
      [danvet: Added a note to the commit message and a comment in the code
      to explain the clever non-blocking trick.]
      Signed-off-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      d3373a24
  2. 20 7月, 2012 39 次提交