All of lore.kernel.org
 help / color / mirror / Atom feed
From: Roy Sun <Roy.Sun@amd.com>
To: <amd-gfx@lists.freedesktop.org>
Cc: Roy Sun <Roy.Sun@amd.com>, David M Nieto <david.nieto@amd.com>
Subject: [PATCH 1/2] drm/scheduler: Change scheduled fence track
Date: Tue, 20 Apr 2021 19:51:47 +0800	[thread overview]
Message-ID: <20210420115148.3652-1-Roy.Sun@amd.com> (raw)

Update the timestamp of scheduled fence on HW
completion of the previous fences

This allow more accurate tracking of the fence
execution in HW

Signed-off-by: David M Nieto <david.nieto@amd.com>
Signed-off-by: Roy Sun <Roy.Sun@amd.com>
---
 drivers/gpu/drm/scheduler/sched_main.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/scheduler/sched_main.c b/drivers/gpu/drm/scheduler/sched_main.c
index 92d8de24d0a1..dc05a20a8ef2 100644
--- a/drivers/gpu/drm/scheduler/sched_main.c
+++ b/drivers/gpu/drm/scheduler/sched_main.c
@@ -515,7 +515,7 @@ void drm_sched_resubmit_jobs(struct drm_gpu_scheduler *sched)
 EXPORT_SYMBOL(drm_sched_resubmit_jobs);
 
 /**
- * drm_sched_resubmit_jobs_ext - helper to relunch certain number of jobs from mirror ring list
+ * drm_sched_resubmit_jobs_ext - helper to relaunch certain number of jobs from pending list
  *
  * @sched: scheduler instance
  * @max: job numbers to relaunch
@@ -671,7 +671,7 @@ drm_sched_select_entity(struct drm_gpu_scheduler *sched)
 static struct drm_sched_job *
 drm_sched_get_cleanup_job(struct drm_gpu_scheduler *sched)
 {
-	struct drm_sched_job *job;
+	struct drm_sched_job *job, *next;
 
 	/*
 	 * Don't destroy jobs while the timeout worker is running  OR thread
@@ -690,6 +690,13 @@ drm_sched_get_cleanup_job(struct drm_gpu_scheduler *sched)
 	if (job && dma_fence_is_signaled(&job->s_fence->finished)) {
 		/* remove job from pending_list */
 		list_del_init(&job->list);
+		/* account for the next fence in the queue */
+		next = list_first_entry_or_null(&sched->pending_list,
+				struct drm_sched_job, list);
+		if (next) {
+			next->s_fence->scheduled.timestamp =
+				job->s_fence->finished.timestamp;
+		}
 	} else {
 		job = NULL;
 		/* queue timeout for next job */
-- 
2.31.1

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

             reply	other threads:[~2021-04-20 11:51 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-20 11:51 Roy Sun [this message]
2021-04-20 11:51 ` [PATCH 2/2] drm/amdgpu: Add show_fdinfo() interface Roy Sun
2021-04-20 12:02   ` Christian König
  -- strict thread matches above, loose matches on Subject: below --
2021-04-26  6:27 [PATCH 1/2] drm/scheduler: Change scheduled fence track Roy Sun
2021-04-26  6:49 ` Christian König
2021-04-26 19:24   ` Deucher, Alexander
2021-04-26 19:40     ` Deucher, Alexander
2021-04-26 19:48       ` Christian König
2021-04-26 19:51         ` Deucher, Alexander
2021-04-28  8:32           ` Deng, Emily
2021-04-28  9:06             ` Christian König
2021-04-28  9:15               ` Deng, Emily
2021-05-04 20:23               ` Alex Deucher
2021-05-05  7:27                 ` Christian König
2021-05-05 19:55                   ` Nieto, David M
2021-04-26 15:30 ` Wang, Kevin(Yang)
2021-04-26 16:08   ` Christian König
2021-04-23 10:55 Roy Sun
2021-04-23 11:09 ` Wang, Kevin(Yang)
2021-04-23  9:19 Roy Sun
2021-04-21  8:03 Roy Sun
2021-04-21  3:46 Roy Sun
2021-04-22  7:06 ` Christian König
2021-04-19  6:26 Roy Sun
2021-04-16  5:04 Roy Sun
2021-04-16 11:26 ` Christian König
2021-04-16 13:50   ` Nirmoy
2021-04-14 13:59 Roy Sun
2021-04-13 12:14 Roy Sun
2021-04-12 12:57 Roy Sun

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210420115148.3652-1-Roy.Sun@amd.com \
    --to=roy.sun@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=david.nieto@amd.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.