1. 07 Dec, 2016 16 commits
  2. 06 Dec, 2016 1 commit
    • Chris Wilson's avatar
      drm/i915: Use memcpy_from_wc for GPU error capture · d637c178
      Chris Wilson authored
      On all platforms we now always read the contents of buffers via the GTT,
      i.e. using WC cpu access. Reads are slow, but they can be accelerated
      with an internal read buffer using sse4.1 (movntqda). This is our
      i915_memcpy_from_wc() routine which also checks for sse4.1 support and
      so we can fallback to using a regular slow memcpy if we need to.
      
      When compressing the pages, the reads are currently done inside zlib's
      fill_window() routine and so we must copy the page into a temporary
      which is then already inside the CPU cache and fast for zlib's
      compression. When not compressing the pages, we don't need a temporary
      and can just use the accelerated read from WC into the destination.
      
      v2: Use zstream locals to reduce diff and allocate the additional
      temporary storage only if sse4.1 is supported.
      v3: Use length=0 for the sse4.1 support check
      Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
      Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
      Link: http://patchwork.freedesktop.org/patch/msgid/20161206124051.17040-1-chris@chris-wilson.co.ukReviewed-by: default avatarTvrtko Ursulin <tvrtko.ursulin@intel.com>
      d637c178
  3. 05 Dec, 2016 23 commits