]> git.karo-electronics.de Git - linux-beck.git/commit
drm/i915/guc: rework guc_add_workqueue_item()
authorDave Gordon <david.s.gordon@intel.com>
Fri, 13 May 2016 14:36:34 +0000 (15:36 +0100)
committerTvrtko Ursulin <tvrtko.ursulin@intel.com>
Mon, 23 May 2016 13:21:53 +0000 (14:21 +0100)
commit0a31afbc0f87c734cb1688eb626ee9abee63d723
treef7d88bb500a1f93f0547d5ccd056c07641fbb255
parent551aaecd8873b728a85c1fcb2b8ca502e9ffc49c
drm/i915/guc: rework guc_add_workqueue_item()

Mostly little optimisations and future-proofing against code breakage.
For instance, if the driver is correctly following the submission
protocol, the "out of space" condition is impossible, so the previous
runtime WARN_ON() is promoted to a GEM_BUG_ON() for a more dramatic
effect in development and less impact in end-user systems.

Similarly we can make alignment checking more stringent and replace
other WARN_ON() conditions that don't relate to the runtime hardware
state with either BUILD_BUG_ON() for compile-time-detectable issues, or
GEM_BUG_ON() for logical "can't happen" errors.

With those changes, we can convert it to void, as suggested by Chris
Wilson, and update the calling code appropriately.

v2:
    Note that we're now putting the request seqno in the "fence_id"
    field of each GuC-work-item, in case it turns up somewhere useful
    (e.g. in a GuC log) [Tvrtko Ursulin].

Signed-off-by: Dave Gordon <david.s.gordon@intel.com>
Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
drivers/gpu/drm/i915/i915_guc_submission.c
drivers/gpu/drm/i915/intel_guc.h
drivers/gpu/drm/i915/intel_guc_fwif.h