From: Boris Brezillon <boris.brezillon@collabora.com>
To: Danilo Krummrich <dakr@redhat.com>
Cc: "Tvrtko Ursulin" <tursulin@igalia.com>,
dri-devel@lists.freedesktop.org, kernel-dev@igalia.com,
"Tvrtko Ursulin" <tvrtko.ursulin@igalia.com>,
"Christian König" <christian.koenig@amd.com>,
"Matthew Brost" <matthew.brost@intel.com>,
"Philipp Stanner" <pstanner@redhat.com>,
"Frank Binns" <Frank.Binns@imgtec.com>
Subject: Re: [RFC 01/14] drm/sched: Delete unused update_job_credits
Date: Wed, 8 Jan 2025 13:27:05 +0100 [thread overview]
Message-ID: <20250108132705.35d8f2a2@collabora.com> (raw)
In-Reply-To: <Z344gwtwvqdXW1N_@pollux>
On Wed, 8 Jan 2025 09:34:11 +0100
Danilo Krummrich <dakr@redhat.com> wrote:
> On Mon, Dec 30, 2024 at 04:52:46PM +0000, Tvrtko Ursulin wrote:
> > From: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
> >
> > No driver is using the update_job_credits() schduler vfunc
> > so lets remove it.
> >
> > Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
>
> (+ Boris)
>
> AFAIR the panthor folks asked for this. I assume they never actually ended up
> using it? Unless they plan to use it,
+Frank
That was for the PowerVR driver, and it doesn't seem it's been hooked
up there. I don't think we'll ever need it in panthor, so
Acked-by: Boris Brezillon <boris.brezillon@collabora.com>
>
> Acked-by: Danilo Krummrich <dakr@kernel.org>
>
> > Cc: Christian König <christian.koenig@amd.com>
> > Cc: Danilo Krummrich <dakr@redhat.com>
> > Cc: Matthew Brost <matthew.brost@intel.com>
> > Cc: Philipp Stanner <pstanner@redhat.com>
> > ---
> > drivers/gpu/drm/scheduler/sched_main.c | 13 -------------
> > include/drm/gpu_scheduler.h | 13 -------------
> > 2 files changed, 26 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/scheduler/sched_main.c b/drivers/gpu/drm/scheduler/sched_main.c
> > index 7ce25281c74c..1734c17aeea5 100644
> > --- a/drivers/gpu/drm/scheduler/sched_main.c
> > +++ b/drivers/gpu/drm/scheduler/sched_main.c
> > @@ -64,12 +64,6 @@
> > * credit limit, the job won't be executed. Instead, the scheduler will wait
> > * until the credit count has decreased enough to not overflow its credit limit.
> > * This implies waiting for previously executed jobs.
> > - *
> > - * Optionally, drivers may register a callback (update_job_credits) provided by
> > - * struct drm_sched_backend_ops to update the job's credits dynamically. The
> > - * scheduler executes this callback every time the scheduler considers a job for
> > - * execution and subsequently checks whether the job fits the scheduler's credit
> > - * limit.
> > */
> >
> > #include <linux/wait.h>
> > @@ -133,13 +127,6 @@ static bool drm_sched_can_queue(struct drm_gpu_scheduler *sched,
> > if (!s_job)
> > return false;
> >
> > - if (sched->ops->update_job_credits) {
> > - s_job->credits = sched->ops->update_job_credits(s_job);
> > -
> > - drm_WARN(sched, !s_job->credits,
> > - "Jobs with zero credits bypass job-flow control.\n");
> > - }
> > -
> > /* If a job exceeds the credit limit, truncate it to the credit limit
> > * itself to guarantee forward progress.
> > */
> > diff --git a/include/drm/gpu_scheduler.h b/include/drm/gpu_scheduler.h
> > index 95e17504e46a..e2e6af8849c6 100644
> > --- a/include/drm/gpu_scheduler.h
> > +++ b/include/drm/gpu_scheduler.h
> > @@ -476,19 +476,6 @@ struct drm_sched_backend_ops {
> > * and it's time to clean it up.
> > */
> > void (*free_job)(struct drm_sched_job *sched_job);
> > -
> > - /**
> > - * @update_job_credits: Called when the scheduler is considering this
> > - * job for execution.
> > - *
> > - * This callback returns the number of credits the job would take if
> > - * pushed to the hardware. Drivers may use this to dynamically update
> > - * the job's credit count. For instance, deduct the number of credits
> > - * for already signalled native fences.
> > - *
> > - * This callback is optional.
> > - */
> > - u32 (*update_job_credits)(struct drm_sched_job *sched_job);
> > };
> >
> > /**
> > --
> > 2.47.1
> >
>
next prev parent reply other threads:[~2025-01-08 12:27 UTC|newest]
Thread overview: 61+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-12-30 16:52 [RFC 00/14] Deadline scheduler and other ideas Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 01/14] drm/sched: Delete unused update_job_credits Tvrtko Ursulin
2025-01-08 8:34 ` Danilo Krummrich
2025-01-08 12:27 ` Boris Brezillon [this message]
2025-01-08 14:08 ` Matt Coster
2024-12-30 16:52 ` [RFC 02/14] drm/sched: Remove idle entity from tree Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 03/14] drm/sched: Implement RR via FIFO Tvrtko Ursulin
2025-01-08 9:42 ` Danilo Krummrich
2025-01-08 15:04 ` Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 04/14] drm/sched: Consolidate entity run queue management Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 05/14] drm/sched: Move run queue related code into a separate file Tvrtko Ursulin
2024-12-31 0:35 ` kernel test robot
2024-12-30 16:52 ` [RFC 06/14] drm/sched: Ignore own fence earlier Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 07/14] drm/sched: Resolve same scheduler dependencies earlier Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 08/14] drm/sched: Add deadline policy Tvrtko Ursulin
2025-01-02 13:11 ` Philipp Stanner
2025-01-03 12:40 ` Tvrtko Ursulin
2025-01-03 12:59 ` Philipp Stanner
2025-01-03 15:11 ` Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 09/14] drm/sched: Remove FIFO and RR and simplify to a single run queue Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 10/14] drm/sched: Queue all free credits in one worker invocation Tvrtko Ursulin
2025-01-07 11:08 ` Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 11/14] drm/sched: Connect with dma-fence deadlines Tvrtko Ursulin
2025-01-07 11:10 ` Tvrtko Ursulin
2025-01-09 11:38 ` Michel Dänzer
2025-01-09 13:31 ` Tvrtko Ursulin
2025-01-09 14:44 ` Michel Dänzer
2025-01-09 16:44 ` Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 12/14] drm/sched: Embed run queue singleton into the scheduler Tvrtko Ursulin
2024-12-31 2:39 ` kernel test robot
2024-12-30 16:52 ` [RFC 13/14] dma-fence: Add helper for custom fence context when merging fences Tvrtko Ursulin
2024-12-30 16:52 ` [RFC 14/14] drm/sched: Resolve all job dependencies in one go Tvrtko Ursulin
2024-12-31 6:01 ` kernel test robot
2025-01-02 13:09 ` [RFC 00/14] Deadline scheduler and other ideas Philipp Stanner
2025-01-03 12:02 ` Tvrtko Ursulin
2025-01-03 12:31 ` Christian König
2025-01-03 13:45 ` Philipp Stanner
2025-01-03 15:17 ` Tvrtko Ursulin
2025-01-09 15:08 ` Michel Dänzer
2025-01-09 16:55 ` Tvrtko Ursulin
2025-01-10 9:14 ` Michel Dänzer
2025-01-13 11:40 ` Tvrtko Ursulin
2025-01-13 15:29 ` Michel Dänzer
2025-01-15 13:38 ` Tvrtko Ursulin
2025-01-15 14:46 ` Michel Dänzer
2025-01-03 15:16 ` AW: " Koenig, Christian
2025-01-03 15:32 ` Tvrtko Ursulin
2025-01-06 13:47 ` Simona Vetter
2025-01-08 8:07 ` Philipp Stanner
2025-01-08 17:59 ` Simona Vetter
2025-01-08 18:06 ` Tvrtko Ursulin
2025-01-08 8:31 ` Danilo Krummrich
2025-01-08 15:13 ` Tvrtko Ursulin
2025-01-08 16:57 ` Danilo Krummrich
2025-01-08 18:55 ` Tvrtko Ursulin
2025-01-09 19:59 ` Matthew Brost
2025-01-10 9:16 ` Tvrtko Ursulin
2025-01-10 17:28 ` Matthew Brost
2025-01-13 12:59 ` Tvrtko Ursulin
2025-01-09 19:50 ` Matthew Brost
2025-01-17 12:12 ` Philipp Stanner
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=20250108132705.35d8f2a2@collabora.com \
--to=boris.brezillon@collabora.com \
--cc=Frank.Binns@imgtec.com \
--cc=christian.koenig@amd.com \
--cc=dakr@redhat.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=kernel-dev@igalia.com \
--cc=matthew.brost@intel.com \
--cc=pstanner@redhat.com \
--cc=tursulin@igalia.com \
--cc=tvrtko.ursulin@igalia.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.