From: Matthew Brost <matthew.brost@intel.com>
To: Danilo Krummrich <dakr@redhat.com>
Cc: robdclark@chromium.org, 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,
lina@asahilina.net, 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 v5 0/7] DRM scheduler changes for Xe
Date: Thu, 12 Oct 2023 04:49:51 +0000 [thread overview]
Message-ID: <ZSd6743EXHCJaqML@DUT025-TGLU.fm.intel.com> (raw)
In-Reply-To: <8c01bab9-6a70-fedc-211d-b22c7340f8f1@redhat.com>
On Thu, Oct 12, 2023 at 04:02:13AM +0200, Danilo Krummrich wrote:
> Hi Matt,
>
> Can you please address my comments from V3 and V4?
>
> https://lore.kernel.org/all/076891e9-b2ce-4c7f-833d-157aca5cd44b@amd.com/T/#m34ccee55e37ca47c87adf01439585d0bd187e3a0
>
Not my intent to ignore you. To be clear I need to address this comment:
'There is some feedback from V3 that doesn't seem to be addressed yet.
(1) Document tear down of struct drm_gpu_scheduler. [1]
(2) Implement helpers to tear down struct drm_gpu_scheduler. [2]
(3) Document implications of using a workqueue in terms of free_job() being
or not being part of the fence signaling path respectively. [3]
I think at least (1) and (3) should be part of this series. I think (2) could
also happen subsequently. Christian's idea [2] how to address this is quite
interesting, but might exceed the scope of this series.
I will try to rebase my Nouveau changes onto your V4 tomorrow for a quick test.
- Danilo
[1] https://lore.kernel.org/all/20230912021615.2086698-1-matthew.brost@intel.com/T/#m2e8c1c1e68e8127d5dd62509b5e424a12217300b
[2] https://lore.kernel.org/all/20230912021615.2086698-1-matthew.brost@intel.com/T/#m16a0d6fa2e617383776515af45d3c6b9db543d47
[3] https://lore.kernel.org/all/20230912021615.2086698-1-matthew.brost@intel.com/T/#m807ff95284089fdb51985f1c187666772314bd8a'
Matt
> - Danilo
>
> On 10/12/23 01:58, 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.
> >
> > 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
> >
> > 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 helper to queue TDR immediately for current and future
> > jobs
> >
> > .../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 | 86 ++-
> > drivers/gpu/drm/scheduler/sched_fence.c | 2 +-
> > drivers/gpu/drm/scheduler/sched_main.c | 506 ++++++++++++------
> > drivers/gpu/drm/v3d/v3d_sched.c | 25 +-
> > include/drm/gpu_scheduler.h | 48 +-
> > 14 files changed, 499 insertions(+), 233 deletions(-)
> >
>
WARNING: multiple messages have this Message-ID (diff)
From: Matthew Brost <matthew.brost@intel.com>
To: Danilo Krummrich <dakr@redhat.com>
Cc: robdclark@chromium.org, thomas.hellstrom@linux.intel.com,
sarah.walker@imgtec.com, ketil.johnsen@arm.com,
Liviu.Dudau@arm.com, mcanal@igalia.com,
dri-devel@lists.freedesktop.org, christian.koenig@amd.com,
luben.tuikov@amd.com, lina@asahilina.net,
donald.robson@imgtec.com, boris.brezillon@collabora.com,
intel-xe@lists.freedesktop.org, faith.ekstrand@collabora.com
Subject: Re: [PATCH v5 0/7] DRM scheduler changes for Xe
Date: Thu, 12 Oct 2023 04:49:51 +0000 [thread overview]
Message-ID: <ZSd6743EXHCJaqML@DUT025-TGLU.fm.intel.com> (raw)
In-Reply-To: <8c01bab9-6a70-fedc-211d-b22c7340f8f1@redhat.com>
On Thu, Oct 12, 2023 at 04:02:13AM +0200, Danilo Krummrich wrote:
> Hi Matt,
>
> Can you please address my comments from V3 and V4?
>
> https://lore.kernel.org/all/076891e9-b2ce-4c7f-833d-157aca5cd44b@amd.com/T/#m34ccee55e37ca47c87adf01439585d0bd187e3a0
>
Not my intent to ignore you. To be clear I need to address this comment:
'There is some feedback from V3 that doesn't seem to be addressed yet.
(1) Document tear down of struct drm_gpu_scheduler. [1]
(2) Implement helpers to tear down struct drm_gpu_scheduler. [2]
(3) Document implications of using a workqueue in terms of free_job() being
or not being part of the fence signaling path respectively. [3]
I think at least (1) and (3) should be part of this series. I think (2) could
also happen subsequently. Christian's idea [2] how to address this is quite
interesting, but might exceed the scope of this series.
I will try to rebase my Nouveau changes onto your V4 tomorrow for a quick test.
- Danilo
[1] https://lore.kernel.org/all/20230912021615.2086698-1-matthew.brost@intel.com/T/#m2e8c1c1e68e8127d5dd62509b5e424a12217300b
[2] https://lore.kernel.org/all/20230912021615.2086698-1-matthew.brost@intel.com/T/#m16a0d6fa2e617383776515af45d3c6b9db543d47
[3] https://lore.kernel.org/all/20230912021615.2086698-1-matthew.brost@intel.com/T/#m807ff95284089fdb51985f1c187666772314bd8a'
Matt
> - Danilo
>
> On 10/12/23 01:58, 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.
> >
> > 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
> >
> > 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 helper to queue TDR immediately for current and future
> > jobs
> >
> > .../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 | 86 ++-
> > drivers/gpu/drm/scheduler/sched_fence.c | 2 +-
> > drivers/gpu/drm/scheduler/sched_main.c | 506 ++++++++++++------
> > drivers/gpu/drm/v3d/v3d_sched.c | 25 +-
> > include/drm/gpu_scheduler.h | 48 +-
> > 14 files changed, 499 insertions(+), 233 deletions(-)
> >
>
next prev parent reply other threads:[~2023-10-12 4:51 UTC|newest]
Thread overview: 67+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-10-11 23:58 [Intel-xe] [PATCH v5 0/7] DRM scheduler changes for Xe Matthew Brost
2023-10-11 23:58 ` Matthew Brost
2023-10-11 23:58 ` [Intel-xe] [PATCH v5 1/7] drm/sched: Add drm_sched_wqueue_* helpers Matthew Brost
2023-10-11 23:58 ` Matthew Brost
2023-10-14 1:24 ` [Intel-xe] " Luben Tuikov
2023-10-14 1:24 ` Luben Tuikov
2023-10-11 23:58 ` [Intel-xe] [PATCH v5 2/7] drm/sched: Convert drm scheduler to use a work queue rather than kthread Matthew Brost
2023-10-11 23:58 ` Matthew Brost
2023-10-14 1:30 ` [Intel-xe] " Luben Tuikov
2023-10-14 1:30 ` Luben Tuikov
2023-10-11 23:58 ` [Intel-xe] [PATCH v5 3/7] drm/sched: Move schedule policy to scheduler Matthew Brost
2023-10-11 23:58 ` Matthew Brost
2023-10-12 0:39 ` [Intel-xe] " Luben Tuikov
2023-10-12 0:39 ` Luben Tuikov
2023-10-12 4:31 ` [Intel-xe] " Matthew Brost
2023-10-12 4:31 ` Matthew Brost
2023-10-12 5:54 ` [Intel-xe] " Luben Tuikov
2023-10-12 5:54 ` Luben Tuikov
2023-10-19 1:19 ` [Intel-xe] " Luben Tuikov
2023-10-19 1:19 ` Luben Tuikov
2023-10-13 17:45 ` [Intel-xe] " Luben Tuikov
2023-10-13 17:45 ` Luben Tuikov
2023-10-16 15:08 ` [Intel-xe] " Matthew Brost
2023-10-16 15:08 ` Matthew Brost
2023-10-16 15:23 ` [Intel-xe] " Luben Tuikov
2023-10-16 15:23 ` Luben Tuikov
2023-10-14 1:40 ` [Intel-xe] " Luben Tuikov
2023-10-14 1:40 ` Luben Tuikov
2023-10-11 23:58 ` [Intel-xe] [PATCH v5 4/7] drm/sched: Add DRM_SCHED_POLICY_SINGLE_ENTITY scheduling policy Matthew Brost
2023-10-11 23:58 ` Matthew Brost
2023-10-14 2:06 ` [Intel-xe] " Luben Tuikov
2023-10-14 2:06 ` Luben Tuikov
2023-10-16 15:00 ` [Intel-xe] " Matthew Brost
2023-10-16 15:00 ` Matthew Brost
2023-10-16 15:10 ` [Intel-xe] " Luben Tuikov
2023-10-16 15:10 ` Luben Tuikov
2023-10-11 23:58 ` [Intel-xe] [PATCH v5 5/7] drm/sched: Split free_job into own work item Matthew Brost
2023-10-11 23:58 ` Matthew Brost
2023-10-14 2:49 ` [Intel-xe] " Luben Tuikov
2023-10-14 2:49 ` Luben Tuikov
2023-10-15 0:09 ` [Intel-xe] " Luben Tuikov
2023-10-15 0:09 ` Luben Tuikov
2023-10-16 15:12 ` [Intel-xe] " Matthew Brost
2023-10-16 15:12 ` Matthew Brost
2023-10-16 15:29 ` [Intel-xe] " Luben Tuikov
2023-10-16 15:29 ` Luben Tuikov
2023-10-16 15:42 ` [Intel-xe] " Luben Tuikov
2023-10-16 15:42 ` Luben Tuikov
2023-10-11 23:58 ` [Intel-xe] [PATCH v5 6/7] drm/sched: Add drm_sched_start_timeout_unlocked helper Matthew Brost
2023-10-11 23:58 ` Matthew Brost
2023-10-14 2:52 ` [Intel-xe] " Luben Tuikov
2023-10-14 2:52 ` Luben Tuikov
2023-10-16 14:57 ` [Intel-xe] " Matthew Brost
2023-10-16 14:57 ` Matthew Brost
2023-10-16 15:15 ` [Intel-xe] " Luben Tuikov
2023-10-16 15:15 ` Luben Tuikov
2023-10-11 23:58 ` [Intel-xe] [PATCH v5 7/7] drm/sched: Add helper to queue TDR immediately for current and future jobs Matthew Brost
2023-10-11 23:58 ` Matthew Brost
2023-10-14 3:04 ` [Intel-xe] " Luben Tuikov
2023-10-14 3:04 ` Luben Tuikov
2023-10-16 15:03 ` [Intel-xe] " Matthew Brost
2023-10-16 15:03 ` Matthew Brost
2023-10-12 2:02 ` [Intel-xe] [PATCH v5 0/7] DRM scheduler changes for Xe Danilo Krummrich
2023-10-12 2:02 ` Danilo Krummrich
2023-10-12 4:49 ` Matthew Brost [this message]
2023-10-12 4:49 ` Matthew Brost
2023-10-12 4:24 ` [Intel-xe] ✗ CI.Patch_applied: failure for DRM scheduler changes for Xe (rev7) Patchwork
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=ZSd6743EXHCJaqML@DUT025-TGLU.fm.intel.com \
--to=matthew.brost@intel.com \
--cc=Liviu.Dudau@arm.com \
--cc=airlied@gmail.com \
--cc=boris.brezillon@collabora.com \
--cc=christian.koenig@amd.com \
--cc=dakr@redhat.com \
--cc=daniel@ffwll.ch \
--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=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 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.