From: Ben Widawsky <ben@bwidawsk.net>
To: intel-gfx@lists.freedesktop.org
Cc: Ben Widawsky <ben@bwidawsk.net>
Subject: [PATCH 00/18] i915 HW Context Support
Date: Sun, 18 Mar 2012 13:39:40 -0700 [thread overview]
Message-ID: <1332103198-25852-1-git-send-email-ben@bwidawsk.net> (raw)
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
next reply other threads:[~2012-03-18 20:41 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-03-18 20:39 Ben Widawsky [this message]
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
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1332103198-25852-1-git-send-email-ben@bwidawsk.net \
--to=ben@bwidawsk.net \
--cc=intel-gfx@lists.freedesktop.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox