[Intel-gfx] [RFC 0/4] Convert requests to use struct fence

John.C.Harrison at Intel.com John.C.Harrison at Intel.com
Fri Mar 20 10:48:33 PDT 2015


From: John Harrison <John.C.Harrison at Intel.com>

There is a construct in the linux kernel called 'struct fence' that is intended
to keep track of work that is executed on hardware. I.e. it solves the basic
problem that the drivers 'struct drm_i915_gem_request' is trying to address. The
request structure does quite a lot more than simply track the execution progress
so is very definitely still required. However, the basic completion status side
could be updated to use the ready made fence implementation and gain all the
advantages that provides.

This is work that was planned since the conversion of the driver from being
seqno value based to being request structure based. This patch series does that
work.

The set is being posted as an RFC. It is built on top of the OLR removal patch
series, so can't be accepted upstream until that series has gone. However, it
would be useful to at least get the design review process going on these patches
while the OLR patches are working through the technical review process.

[Patches against drm-intel-nightly tree fetched 18/03/2015 with Anti-OLR patches
ontop]

John Harrison (4):
  drm/i915: Convert requests to use struct fence
  drm/i915: Removed now redudant parameter to i915_gem_request_completed()
  drm/i915: Interrupt driven fences
  drm/i915: Updated request structure tracing

 drivers/gpu/drm/i915/i915_debugfs.c     |    2 +-
 drivers/gpu/drm/i915/i915_drv.h         |   41 +++++----
 drivers/gpu/drm/i915/i915_gem.c         |  140 ++++++++++++++++++++++++++++---
 drivers/gpu/drm/i915/i915_irq.c         |    5 +-
 drivers/gpu/drm/i915/i915_trace.h       |    7 +-
 drivers/gpu/drm/i915/intel_display.c    |    2 +-
 drivers/gpu/drm/i915/intel_lrc.c        |    3 +
 drivers/gpu/drm/i915/intel_ringbuffer.c |    3 +
 drivers/gpu/drm/i915/intel_ringbuffer.h |    5 ++
 9 files changed, 168 insertions(+), 40 deletions(-)

-- 
1.7.9.5



More information about the Intel-gfx mailing list