All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/18] i915 HW Context Support
@ 2012-03-18 20:39 Ben Widawsky
  2012-03-18 20:39 ` [PATCH 01/18] drm/i915: CXT_SIZE register offsets added Ben Widawsky
                   ` (19 more replies)
  0 siblings, 20 replies; 54+ messages in thread
From: Ben Widawsky @ 2012-03-18 20:39 UTC (permalink / raw)
  To: intel-gfx; +Cc: Ben Widawsky

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.
  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

^ permalink raw reply	[flat|nested] 54+ messages in thread

end of thread, other threads:[~2012-03-30 21:30 UTC | newest]

Thread overview: 54+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-03-18 20:39 [PATCH 00/18] i915 HW Context Support Ben Widawsky
2012-03-18 20:39 ` [PATCH 01/18] drm/i915: CXT_SIZE register offsets added Ben Widawsky
2012-03-18 20:39 ` [PATCH 02/18] drm/i915: preliminary context support Ben Widawsky
2012-03-28 22:43   ` Daniel Vetter
2012-03-28 22:59     ` Ben Widawsky
2012-03-29  8:43       ` Daniel Vetter
2012-03-18 20:39 ` [PATCH 03/18] drm/i915: context basic create & destroy Ben Widawsky
2012-03-18 20:39 ` [PATCH 04/18] drm/i915: add context information to objects Ben Widawsky
2012-03-28 22:36   ` Daniel Vetter
2012-03-29  0:20     ` Ben Widawsky
2012-03-29  8:47       ` Daniel Vetter
2012-03-29 15:57         ` Ben Widawsky
2012-03-18 20:39 ` [PATCH 05/18] drm/i915: context switch implementation Ben Widawsky
2012-03-29 18:24   ` Daniel Vetter
2012-03-29 18:43     ` Ben Widawsky
2012-03-29 18:49       ` Daniel Vetter
2012-03-30 18:11         ` Ben Widawsky
2012-03-29 18:47   ` Daniel Vetter
2012-03-18 20:39 ` [PATCH 06/18] drm/i915: trace events for contexts Ben Widawsky
2012-03-18 20:39 ` [PATCH 07/18] drm/i915: Ivybridge MI_ARB_ON_OFF context w/a Ben Widawsky
2012-03-18 20:39 ` [PATCH 08/18] drm/i915: PIPE_CONTROL_TLB_INVALIDATE Ben Widawsky
2012-03-18 20:39 ` [PATCH 09/18] drm/i915: possibly invalidate TLB before context switch Ben Widawsky
2012-03-29 19:25   ` Daniel Vetter
2012-03-30 18:39     ` Ben Widawsky
2012-03-30 19:01       ` Daniel Vetter
2012-03-18 20:39 ` [PATCH 10/18] drm/i915: use the default context Ben Widawsky
2012-03-18 20:39 ` [PATCH 11/18] drm/i915: switch to default context on idle Ben Widawsky
2012-03-29 19:29   ` Daniel Vetter
2012-03-29 20:28     ` Chris Wilson
2012-03-30 21:17     ` Ben Widawsky
2012-03-30 21:30       ` Daniel Vetter
2012-03-18 20:39 ` [PATCH 12/18] drm/i915: try to reset the gpu before unload Ben Widawsky
2012-03-29 19:31   ` Daniel Vetter
2012-03-30 18:50     ` Ben Widawsky
2012-03-30 19:05       ` Daniel Vetter
2012-03-30 16:54   ` Jesse Barnes
2012-03-30 17:30     ` Daniel Vetter
2012-03-18 20:39 ` [PATCH 13/18] drm/i915/context: create & destroy ioctls Ben Widawsky
2012-03-29 19:35   ` Daniel Vetter
2012-03-30 18:55     ` Ben Widawsky
2012-03-30 19:16       ` Daniel Vetter
2012-03-18 20:39 ` [PATCH 14/18] drm/i915/context: switch contexts with execbuf2 Ben Widawsky
2012-03-29 19:38   ` Daniel Vetter
2012-03-30 18:58     ` Ben Widawsky
2012-03-30 19:20       ` Daniel Vetter
2012-03-18 20:39 ` [PATCH 15/18] drm/i915/context: add params Ben Widawsky
2012-03-18 20:39 ` [PATCH 16/18] drm/i915/context: anonymous context interfaces Ben Widawsky
2012-03-29 19:42   ` Daniel Vetter
2012-03-18 20:39 ` [PATCH 17/18] drm/i915: Ironlake rc6 can use " Ben Widawsky
2012-03-29 19:47   ` Daniel Vetter
2012-03-18 20:39 ` [PATCH 18/18] drm/i915: try to enable rc6 on Ironlake... again Ben Widawsky
2012-03-19  3:47 ` [PATCH 00/18] i915 HW Context Support Ben Widawsky
2012-03-19 10:14 ` Daniel Vetter
2012-03-29 19:51   ` Daniel Vetter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.