OSDN Git Service

drm/i915: Wrap context schedule notification
authorTvrtko Ursulin <tvrtko.ursulin@intel.com>
Tue, 21 Nov 2017 18:18:47 +0000 (18:18 +0000)
committerTvrtko Ursulin <tvrtko.ursulin@intel.com>
Wed, 22 Nov 2017 11:25:01 +0000 (11:25 +0000)
No functional change just something which will be handy in the
following patch.

Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Link: https://patchwork.freedesktop.org/patch/msgid/20171121181852.16128-4-tvrtko.ursulin@linux.intel.com
drivers/gpu/drm/i915/intel_lrc.c

index 16d4936..8e3990d 100644 (file)
@@ -379,6 +379,18 @@ execlists_context_status_change(struct drm_i915_gem_request *rq,
                                   status, rq);
 }
 
+static inline void
+execlists_context_schedule_in(struct drm_i915_gem_request *rq)
+{
+       execlists_context_status_change(rq, INTEL_CONTEXT_SCHEDULE_IN);
+}
+
+static inline void
+execlists_context_schedule_out(struct drm_i915_gem_request *rq)
+{
+       execlists_context_status_change(rq, INTEL_CONTEXT_SCHEDULE_OUT);
+}
+
 static void
 execlists_update_context_pdps(struct i915_hw_ppgtt *ppgtt, u32 *reg_state)
 {
@@ -430,7 +442,7 @@ static void execlists_submit_ports(struct intel_engine_cs *engine)
                if (rq) {
                        GEM_BUG_ON(count > !n);
                        if (!count++)
-                               execlists_context_status_change(rq, INTEL_CONTEXT_SCHEDULE_IN);
+                               execlists_context_schedule_in(rq);
                        port_set(&port[n], port_pack(rq, count));
                        desc = execlists_update_context(rq);
                        GEM_DEBUG_EXEC(port[n].context_id = upper_32_bits(desc));
@@ -902,8 +914,7 @@ static void execlists_submission_tasklet(unsigned long data)
                                GEM_BUG_ON(port_isset(&port[1]) &&
                                           !(status & GEN8_CTX_STATUS_ELEMENT_SWITCH));
                                GEM_BUG_ON(!i915_gem_request_completed(rq));
-                               execlists_context_status_change(rq, INTEL_CONTEXT_SCHEDULE_OUT);
-
+                               execlists_context_schedule_out(rq);
                                trace_i915_gem_request_out(rq);
                                i915_gem_request_put(rq);