From: Daniel Vetter <daniel@ffwll.ch>
To: Matthew Brost <matthew.brost@intel.com>
Cc: robdclark@chromium.org, lina@asahilina.net,
sarah.walker@imgtec.com, ketil.johnsen@arm.com,
Liviu.Dudau@arm.com, mcanal@igalia.com, frank.binns@imgtec.com,
dri-devel@lists.freedesktop.org, christian.koenig@amd.com,
luben.tuikov@amd.com, dakr@redhat.com, donald.robson@imgtec.com,
daniel@ffwll.ch, boris.brezillon@collabora.com,
airlied@gmail.com, intel-xe@lists.freedesktop.org,
faith.ekstrand@collabora.com
Subject: Re: [Intel-xe] [PATCH v6 0/7] DRM scheduler changes for Xe
Date: Wed, 18 Oct 2023 10:24:28 +0200 [thread overview]
Message-ID: <ZS+WPAxgPlwj/Hug@dvetter-linux.ger.corp.intel.com> (raw)
In-Reply-To: <20231017150958.838613-1-matthew.brost@intel.com>
On Tue, Oct 17, 2023 at 08:09:51AM -0700, Matthew Brost wrote:
> As a prerequisite to merging the new Intel Xe DRM driver [1] [2], we
> have been asked to merge our common DRM scheduler patches first.
>
> This a continuation of a RFC [3] with all comments addressed, ready for
> a full review, and hopefully in state which can merged in the near
> future. More details of this series can found in the cover letter of the
> RFC [3].
>
> These changes have been tested with the Xe driver. Based on drm-tip branch.
>
> A follow up series will be posted to address some of dakr requets for
> kernel doc changes.
I think it'd be really good to include the doc improved in this series.
drm/sched is one of the least documented parts of drm, and has some of the
trickiest sharp corners. We really should be documenting these as
consensus around how things work and as features get added.
I think it would also be really awesome if someone goes through all the
interfaces and adds docs for what we already have. That's probably for
later, but I think really needed to make sure the docs are somewhat
consistent (things like the api includ scaffolding, or having the code
related pieces all pushed to the .c files as DOC: comments and all these
things otherwise tend to end up a bit more chaotic than needed).
Cheers, Sima
>
> v2:
> - Break run job, free job, and process message in own work items
> - This might break other drivers as run job and free job now can run in
> parallel, can fix up if needed
>
> v3:
> - Include missing patch 'drm/sched: Add drm_sched_submit_* helpers'
> - Fix issue with setting timestamp to early
> - Don't dequeue jobs for single entity after calling entity fini
> - Flush pending jobs on entity fini
> - Add documentation for entity teardown
> - Add Matthew Brost to maintainers of DRM scheduler
>
> v4:
> - Drop message interface
> - Drop 'Flush pending jobs on entity fini'
> - Drop 'Add documentation for entity teardown'
> - Address all feedback
>
> v5:
> - Address Luben's feedback
> - Drop starting TDR after calling run_job()
> - Drop adding Matthew Brost to maintainers of DRM scheduler
>
> v6:
> - Address Luben's feedback
> - Include base commit
>
> Matt
>
> [1] https://gitlab.freedesktop.org/drm/xe/kernel
> [2] https://patchwork.freedesktop.org/series/112188/
> [3] https://patchwork.freedesktop.org/series/116055/
>
>
> Matthew Brost (7):
> drm/sched: Add drm_sched_wqueue_* helpers
> drm/sched: Convert drm scheduler to use a work queue rather than
> kthread
> drm/sched: Move schedule policy to scheduler
> drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy
> drm/sched: Split free_job into own work item
> drm/sched: Add drm_sched_start_timeout_unlocked helper
> drm/sched: Add a helper to queue TDR immediately
>
> .../drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c | 2 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_debugfs.c | 15 +-
> drivers/gpu/drm/amd/amdgpu/amdgpu_device.c | 15 +-
> drivers/gpu/drm/etnaviv/etnaviv_sched.c | 5 +-
> drivers/gpu/drm/lima/lima_sched.c | 5 +-
> drivers/gpu/drm/msm/adreno/adreno_device.c | 6 +-
> drivers/gpu/drm/msm/msm_ringbuffer.c | 7 +-
> drivers/gpu/drm/nouveau/nouveau_sched.c | 5 +-
> drivers/gpu/drm/panfrost/panfrost_job.c | 5 +-
> drivers/gpu/drm/scheduler/sched_entity.c | 85 ++-
> drivers/gpu/drm/scheduler/sched_fence.c | 2 +-
> drivers/gpu/drm/scheduler/sched_main.c | 507 ++++++++++++------
> drivers/gpu/drm/v3d/v3d_sched.c | 25 +-
> include/drm/gpu_scheduler.h | 48 +-
> 14 files changed, 498 insertions(+), 234 deletions(-)
>
>
> base-commit: 201c8a7bd1f3f415920a2df4b8a8817e973f42fe
> --
> 2.34.1
>
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
prev parent reply other threads:[~2023-10-18 8:24 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-17 15:09 [Intel-xe] [PATCH v6 0/7] DRM scheduler changes for Xe Matthew Brost
2023-10-17 15:09 ` [Intel-xe] [PATCH v6 1/7] drm/sched: Add drm_sched_wqueue_* helpers Matthew Brost
2023-10-17 15:09 ` [Intel-xe] [PATCH v6 2/7] drm/sched: Convert drm scheduler to use a work queue rather than kthread Matthew Brost
2023-10-17 15:09 ` [Intel-xe] [PATCH v6 3/7] drm/sched: Move schedule policy to scheduler Matthew Brost
2023-10-24 3:34 ` Luben Tuikov
2023-10-17 15:09 ` [Intel-xe] [PATCH v6 4/7] drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy Matthew Brost
2023-10-24 3:50 ` Luben Tuikov
2023-10-25 15:13 ` Matthew Brost
2023-10-25 18:39 ` Luben Tuikov
2023-10-17 15:09 ` [Intel-xe] [PATCH v6 5/7] drm/sched: Split free_job into own work item Matthew Brost
2023-10-19 1:25 ` Luben Tuikov
2023-10-19 16:55 ` Matthew Brost
2023-10-22 1:27 ` Luben Tuikov
2023-10-23 12:16 ` Boris Brezillon
2023-10-23 12:39 ` Boris Brezillon
2023-10-23 13:54 ` Matthew Brost
2023-10-23 14:22 ` Boris Brezillon
2023-10-23 22:03 ` Matthew Brost
2023-10-17 15:09 ` [Intel-xe] [PATCH v6 6/7] drm/sched: Add drm_sched_start_timeout_unlocked helper Matthew Brost
2023-10-17 15:09 ` [Intel-xe] [PATCH v6 7/7] drm/sched: Add a helper to queue TDR immediately Matthew Brost
2023-10-18 16:18 ` Luben Tuikov
2023-10-17 15:12 ` [Intel-xe] ✗ CI.Patch_applied: failure for DRM scheduler changes for Xe (rev8) Patchwork
2023-10-18 8:24 ` Daniel Vetter [this message]
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=ZS+WPAxgPlwj/Hug@dvetter-linux.ger.corp.intel.com \
--to=daniel@ffwll.ch \
--cc=Liviu.Dudau@arm.com \
--cc=airlied@gmail.com \
--cc=boris.brezillon@collabora.com \
--cc=christian.koenig@amd.com \
--cc=dakr@redhat.com \
--cc=donald.robson@imgtec.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=faith.ekstrand@collabora.com \
--cc=frank.binns@imgtec.com \
--cc=intel-xe@lists.freedesktop.org \
--cc=ketil.johnsen@arm.com \
--cc=lina@asahilina.net \
--cc=luben.tuikov@amd.com \
--cc=matthew.brost@intel.com \
--cc=mcanal@igalia.com \
--cc=robdclark@chromium.org \
--cc=sarah.walker@imgtec.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox