[Intel-gfx] [PATCH 00/18] i915 HW Context Support

Daniel Vetter daniel at ffwll.ch
Mon Mar 19 11:14:32 CET 2012


On Sun, Mar 18, 2012 at 01:39:40PM -0700, Ben Widawsky wrote:
> The patches have changed quite a bit since the RFC, and therefore I
> didn't feel comfortable trying to do v2 information. I didn't feel
> comfortable taking the few r-bs that I had from the RFC except for the
> one patch that I applied wholesale.
> 
> Summary:
> - Completely redid the patch splitting.

I've only done a quick and cursory reading, but I like the new splitting
_much_ more. The storyline behind these patches is now much clearer. I'll
try to do a more in-depth review later this week.

Cheers, Daniel

>   The number of patches increased, but LOC is about the same, and a
>   handful of the new patches are either because of more splitting, or
>   completely new bits.
> - Reference counted context allows freeing the data structure and
>   freeing the BO independently. This is probably the most significant
>   change.
> - Convert ILK RC6 code to use context code. I'm hopefuly this will make
>   things more stable, but have no proof.
> - Added trace events for context create/destroy/switch.
> - Only support render ring context switch (previous code supported any
>   ring, though media ring is the only other ring which *should* work).
> 
> Testing summary.
> ILK
>   RC6, just booted to desktop
> SNB
>   module load/unload testing
>   20 consecutive suspend resume cycles
>   nexuiz with experimental mesa
>   piglit quick.tests with experimental mesa
>     I've seen time-elapsed, and polygonOffset intermittently fail, I
>     believe this is caused by the following...
>   Missed IRQs now seem to occur once every other piglit run.
>     I have some new code to try to fix this... coming soon, I hope.
> IVB
>   No testing done since RFC
> 
> I'll respond to this email with links to what I used to test (code is
> currently not in pushable form).
> kernel
> libdrm
> mesa
> intel-gpu-tools
> 
> Thanks to Chris Wilson, Daniel Vetter, and Eric Anholt for providing
> useful feedback in the RFC.
> 
> Ben Widawsky (18):
>   drm/i915: CXT_SIZE register offsets added
>   drm/i915: preliminary context support
>   drm/i915: context basic create & destroy
>   drm/i915: add context information to objects
>   drm/i915: context switch implementation
>   drm/i915: trace events for contexts
>   drm/i915: Ivybridge MI_ARB_ON_OFF context w/a
>   drm/i915: PIPE_CONTROL_TLB_INVALIDATE
>   drm/i915: possibly invalidate TLB before context switch
>   drm/i915: use the default context
>   drm/i915: switch to default context on idle
>   drm/i915: try to reset the gpu before unload
>   drm/i915/context: create & destroy ioctls
>   drm/i915/context: switch contexts with execbuf2
>   drm/i915/context: add params
>   drm/i915/context: anonymous context interfaces
>   drm/i915: Ironlake rc6 can use context interfaces
>   drm/i915: try to enable rc6 on Ironlake... again
> 
>  drivers/gpu/drm/i915/Makefile              |    1 +
>  drivers/gpu/drm/i915/i915_debugfs.c        |    8 +-
>  drivers/gpu/drm/i915/i915_dma.c            |    9 +
>  drivers/gpu/drm/i915/i915_drv.c            |    1 +
>  drivers/gpu/drm/i915/i915_drv.h            |   43 ++-
>  drivers/gpu/drm/i915/i915_gem.c            |   11 +
>  drivers/gpu/drm/i915/i915_gem_context.c    |  513 ++++++++++++++++++++++++++++
>  drivers/gpu/drm/i915/i915_gem_execbuffer.c |    6 +
>  drivers/gpu/drm/i915/i915_reg.h            |   26 ++
>  drivers/gpu/drm/i915/i915_trace.h          |   59 ++++
>  drivers/gpu/drm/i915/intel_display.c       |   95 +-----
>  drivers/gpu/drm/i915/intel_ringbuffer.c    |   49 +++
>  drivers/gpu/drm/i915/intel_ringbuffer.h    |   11 +
>  include/drm/i915_drm.h                     |   21 +-
>  14 files changed, 755 insertions(+), 98 deletions(-)
>  create mode 100644 drivers/gpu/drm/i915/i915_gem_context.c
> 
> -- 
> 1.7.9.4
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Mail: daniel at ffwll.ch
Mobile: +41 (0)79 365 57 48



More information about the Intel-gfx mailing list