Re: [PATCH 1/2] drm/i915: Add GuC support for engine busy stats

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 22/12/2017 10:50, Sagar Arun Kamble wrote:
On 11/29/2017 6:03 PM, Tvrtko Ursulin wrote:
From: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx>

Wire up the engine busy stats accounting to the GuC submission backend.

Since there is not
no

Yeah. :)

  context out interrupt we need to place the accounting
callbacks per-request in order to correctly pair with user interrupts.

v2: Rebase.
v3: Commit update.

Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@xxxxxxxxx>
---
  drivers/gpu/drm/i915/intel_guc_submission.c | 4 ++--
  1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_guc_submission.c b/drivers/gpu/drm/i915/intel_guc_submission.c
index 912ff143d531..d80d2a3214da 100644
--- a/drivers/gpu/drm/i915/intel_guc_submission.c
+++ b/drivers/gpu/drm/i915/intel_guc_submission.c
@@ -781,6 +781,7 @@ static void guc_dequeue(struct intel_engine_cs *engine)
              INIT_LIST_HEAD(&rq->priotree.link);
              __i915_gem_request_submit(rq);
+            intel_engine_context_in(rq->engine);
Shouldn't we also invoke execlists_context_status_change for GVT-g.

Not currently in GuC paths so I think not, or if yes, then it should be added separately.

              trace_i915_gem_request_in(rq,
                            port_index(port, execlists));
              last = rq;
@@ -813,6 +814,7 @@ static void guc_submission_tasklet(unsigned long data)
      rq = port_request(&port[0]);
      while (rq && i915_gem_request_completed(rq)) {
+        intel_engine_context_out(rq->engine);
          trace_i915_gem_request_out(rq);
          i915_gem_request_put(rq);
@@ -1453,8 +1455,6 @@ int intel_guc_submission_enable(struct intel_guc *guc)
          execlists->tasklet.func = guc_submission_tasklet;
          engine->park = guc_submission_park;
          engine->unpark = guc_submission_unpark;
-
-        engine->flags &= ~I915_ENGINE_SUPPORTS_STATS;
Should we explicitly set this flag even though execlists is setting it.

AFAIR we settled on this approach while discussing the parent patch. Parent = the patch which added the I915_ENGINE_SUPPORTS_STATS.

      }
      return 0;
Overall change looks good to me.
GuC publishing engine data will make it more precise as we understand.

Hopefully yes.

Regards,

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




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]
  Powered by Linux