public inbox for intel-gfx@lists.freedesktop.org
 help / color / mirror / Atom feed
* [PATCH 0/6] RFC: Persistent workarounds across reset/resume
@ 2014-09-18 14:58 Mika Kuoppala
  2014-09-18 14:58 ` [PATCH 1/6] drm/i915: Reinitialize default context after reset Mika Kuoppala
                   ` (5 more replies)
  0 siblings, 6 replies; 17+ messages in thread
From: Mika Kuoppala @ 2014-09-18 14:58 UTC (permalink / raw)
  To: intel-gfx

Hi,

The current reality is that after gpu hang or after 
first suspend/resume cycle, we have lost all our
workarounds. It is somewhat troubling to think that
what ghosts we have been hunting and what effort we have
wasted on the testruns that have had unrelated single hang
at some point of the 10k+ item testset.

Also with gen8 we have been thinking that we have workarounds,
but effectively we have run without some of them, even after boot
until Arun's ring based wa setup got merged.
Some of the workarounds touched a part of context that gen8
just threw away when we switched to our 'default' one.
And when writes started to really stick, we see all kinds of
interesting phenomena. For example:
https://bugs.freedesktop.org/show_bug.cgi?id=83482

This series is my first attempt to get into deterministic,
identical state after driver load, reset and resume. There
is more work to be done but I posted this as RFC to get
feedback on the direction before I go forward with other gens.

So here are the patches, for BDW and IVB, to be able to verify
the workarounds with igt, after reset/resume. Patch 3 was needed
to get deterministic results on bdw.

Any feedback will be greatly appreciated,
-Mika



Mika Kuoppala (6):
  drm/i915: Reinitialize default context after reset
  drm/i915: Reinitialize default context after resume
  drm/i915: Disable render idle on user forcewake
  drm/i915: Build workaround list in ring initialization
  drm/i915: Add ivb workarounds into the wa list.
  drm/i915: Check workaround status on dfs read time

 drivers/gpu/drm/i915/i915_debugfs.c     |  30 ++--
 drivers/gpu/drm/i915/i915_drv.c         |   1 +
 drivers/gpu/drm/i915/i915_drv.h         |  32 ++--
 drivers/gpu/drm/i915/i915_gem_context.c |  42 +++--
 drivers/gpu/drm/i915/i915_reg.h         |   6 +-
 drivers/gpu/drm/i915/intel_lrc.c        |   4 +-
 drivers/gpu/drm/i915/intel_pm.c         |  61 +------
 drivers/gpu/drm/i915/intel_ringbuffer.c | 282 +++++++++++++++++++++++---------
 drivers/gpu/drm/i915/intel_uncore.c     |  37 ++++-
 9 files changed, 308 insertions(+), 187 deletions(-)

-- 
1.9.1

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

end of thread, other threads:[~2014-10-07 14:56 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-09-18 14:58 [PATCH 0/6] RFC: Persistent workarounds across reset/resume Mika Kuoppala
2014-09-18 14:58 ` [PATCH 1/6] drm/i915: Reinitialize default context after reset Mika Kuoppala
2014-09-18 15:36   ` Chris Wilson
2014-09-19 15:43     ` Daniel Vetter
2014-09-19 17:46   ` Volkin, Bradley D
2014-10-07 14:54     ` Mika Kuoppala
2014-09-18 14:58 ` [PATCH 2/6] drm/i915: Reinitialize default context after resume Mika Kuoppala
2014-09-18 14:58 ` [PATCH 3/6] drm/i915: Disable render idle on user forcewake Mika Kuoppala
2014-09-18 15:30   ` Chris Wilson
2014-09-18 15:54     ` Mika Kuoppala
2014-09-18 16:03       ` Chris Wilson
2014-09-18 17:05       ` Ville Syrjälä
2014-09-18 14:58 ` [PATCH 4/6] drm/i915: Build workaround list in ring initialization Mika Kuoppala
2014-09-19 15:49   ` Daniel Vetter
2014-09-18 14:58 ` [PATCH 5/6] drm/i915: Add ivb workarounds into the wa list Mika Kuoppala
2014-09-18 14:58 ` [PATCH 6/6] drm/i915: Check workaround status on dfs read time Mika Kuoppala
2014-09-18 15:18   ` [PATCH] tests/gem_workarounds: adapt to constant wa list from driver Mika Kuoppala

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox