Intel-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/8] Restore workarounds after engine reset and unify their handling
@ 2018-11-30 11:31 Tvrtko Ursulin
  2018-11-30 11:31 ` [PATCH 1/8] drm/i915: Record GT workarounds in a list Tvrtko Ursulin
                   ` (8 more replies)
  0 siblings, 9 replies; 24+ messages in thread
From: Tvrtko Ursulin @ 2018-11-30 11:31 UTC (permalink / raw)
  To: Intel-gfx

From: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

First two patches in this series fix losing of workarounds after engine reset
(https://bugzilla.freedesktop.org/show_bug.cgi?id=107945) which started
happening after 59b449d5c82a ("drm/i915: Split out functions for different kinds
of workarounds").

But since it was discovered to be unsafe to simply re-apply all of them, against
a possibly active GPU, and potentially from IRQ context, the approach taken was
to split GT workarounds and per-engine workarounds. Latter so far contain the
ones living in the 0x2xxx and 0xbxxx range, which were empirically shown to be
lost after RCS reset.

This way only a smaller set of affected workarounds can be applied after engine
resetm, which is done with irq safe read-modify-write cycle.

The series is structured like this so first two patches are as standalone as
possible so it is easy (easier) to backport them. The rest of the series
cleans up the whole workaround handling by moving all four classes of them to a
common framework.

Tvrtko Ursulin (8):
  drm/i915: Record GT workarounds in a list
  drm/i915: Introduce per-engine workarounds
  drm/i915: Verify GT workaround state at runtime
  drm/i915: Verify engine workaround state at runtime
  drm/i915/selftests: Add tests for GT and engine workaround
    verification
  drm/i915: Move register white-listing to the common workaround
    framework
  drm/i915: Fuse per-context workaround handling with the common
    framework
  drm/i915: Trim unused workaround list entries

 drivers/gpu/drm/i915/i915_debugfs.c           |  11 +-
 drivers/gpu/drm/i915/i915_drv.c               |   8 +
 drivers/gpu/drm/i915/i915_drv.h               |  18 +-
 drivers/gpu/drm/i915/i915_gem.c               |   6 +
 drivers/gpu/drm/i915/i915_gem_context.c       |   6 +-
 drivers/gpu/drm/i915/intel_engine_cs.c        |   3 +
 drivers/gpu/drm/i915/intel_lrc.c              |   5 +
 drivers/gpu/drm/i915/intel_ringbuffer.h       |   3 +
 drivers/gpu/drm/i915/intel_workarounds.c      | 896 +++++++++++-------
 drivers/gpu/drm/i915/intel_workarounds.h      |  33 +-
 .../drm/i915/selftests/intel_workarounds.c    | 130 ++-
 11 files changed, 726 insertions(+), 393 deletions(-)

-- 
2.19.1

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2018-11-30 15:21 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-11-30 11:31 [PATCH 0/8] Restore workarounds after engine reset and unify their handling Tvrtko Ursulin
2018-11-30 11:31 ` [PATCH 1/8] drm/i915: Record GT workarounds in a list Tvrtko Ursulin
2018-11-30 11:31 ` [PATCH 2/8] drm/i915: Introduce per-engine workarounds Tvrtko Ursulin
2018-11-30 11:31 ` [PATCH 3/8] drm/i915: Verify GT workaround state at runtime Tvrtko Ursulin
2018-11-30 11:38   ` Chris Wilson
2018-11-30 12:02     ` Tvrtko Ursulin
2018-11-30 14:36       ` Chris Wilson
2018-11-30 11:54   ` Chris Wilson
2018-11-30 15:21     ` Tvrtko Ursulin
2018-11-30 11:31 ` [PATCH 4/8] drm/i915: Verify engine " Tvrtko Ursulin
2018-11-30 11:31 ` [PATCH 5/8] drm/i915/selftests: Add tests for GT and engine workaround verification Tvrtko Ursulin
2018-11-30 11:43   ` Chris Wilson
2018-11-30 15:15     ` Tvrtko Ursulin
2018-11-30 15:21       ` Chris Wilson
2018-11-30 11:31 ` [PATCH 6/8] drm/i915: Move register white-listing to the common workaround framework Tvrtko Ursulin
2018-11-30 11:45   ` Chris Wilson
2018-11-30 15:16     ` Tvrtko Ursulin
2018-11-30 11:32 ` [PATCH 7/8] drm/i915: Fuse per-context workaround handling with the common framework Tvrtko Ursulin
2018-11-30 11:47   ` Chris Wilson
2018-11-30 15:17     ` Tvrtko Ursulin
2018-11-30 11:32 ` [PATCH 8/8] drm/i915: Trim unused workaround list entries Tvrtko Ursulin
2018-11-30 11:49   ` Chris Wilson
2018-11-30 15:18     ` Tvrtko Ursulin
2018-11-30 12:06 ` ✗ Fi.CI.BAT: failure for Restore workarounds after engine reset and unify their handling Patchwork

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