linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Philipp Stanner <phasta@mailbox.org>
To: "Philipp Stanner" <phasta@kernel.org>,
	"Danilo Krummrich" <dakr@kernel.org>,
	"David Airlie" <airlied@gmail.com>,
	"Simona Vetter" <simona@ffwll.ch>,
	"Matthew Brost" <matthew.brost@intel.com>,
	"Christian König" <ckoenig.leichtzumerken@gmail.com>,
	"Maarten Lankhorst" <maarten.lankhorst@linux.intel.com>,
	"Thomas Zimmermann" <tzimmermann@suse.de>,
	"Tvrtko Ursulin" <tvrtko.ursulin@igalia.com>,
	"Pierre-Eric Pelloux-Prayer" <pierre-eric.pelloux-prayer@amd.com>
Cc: dri-devel@lists.freedesktop.org, nouveau@lists.freedesktop.org,
	 linux-kernel@vger.kernel.org, linux-media@vger.kernel.org
Subject: Re: [PATCH v4 0/8] drm/sched: Fix memory leaks with cancel_job() callback
Date: Thu, 10 Jul 2025 17:11:58 +0200	[thread overview]
Message-ID: <18f514ef3a61c877bc80f403db67a2106f4bdd44.camel@mailbox.org> (raw)
In-Reply-To: <20250710125412.128476-2-phasta@kernel.org>

On Thu, 2025-07-10 at 14:54 +0200, Philipp Stanner wrote:
> Changes in v4:
>   - Change dev_err() to dev_warn() in pending_list emptyness check.
> 
> Changes in v3:
>   - Remove forgotten copy-past artifacts. (Tvrtko)
>   - Remove forgotten done_list struct member. (Tvrtko)
>   - Slightly adjust commit message of patch 7.
>   - Add RBs. (Maira, Danilo, Tvrtko)
> 
> Changes in v2:
>   - Add new unit test to test cancel_job()'s behavior. (Tvrtko)
>   - Add RB from Maíra
> 
> Changes since the RFC:
>   - Rename helper function for drm_sched_fini(). (Tvrtko)
>   - Add Link to Tvrtko's RFC patch to patch 1.
> 
> 
> Since a long time, drm_sched_fini() can leak jobs that are still in
> drm_sched.pending_list.
> 
> This series solves the leaks in a backwards-compatible manner by
> adding
> a new, optional callback. If that callback is implemented, the
> scheduler
> uses it to cancel all jobs from pending_list and then frees them.
> 
> Philipp Stanner (8):
>   drm/panfrost: Fix scheduler workqueue bug
>   drm/sched: Avoid memory leaks with cancel_job() callback
>   drm/sched/tests: Implement cancel_job() callback
>   drm/sched/tests: Add unit test for cancel_job()
>   drm/sched: Warn if pending_list is not empty
>   drm/nouveau: Make fence container helper usable driver-wide
>   drm/nouveau: Add new callback for scheduler teardown
>   drm/nouveau: Remove waitque for sched teardown
> 
>  drivers/gpu/drm/nouveau/nouveau_fence.c       | 35 ++++++----
>  drivers/gpu/drm/nouveau/nouveau_fence.h       |  7 ++
>  drivers/gpu/drm/nouveau/nouveau_sched.c       | 35 ++++++----
>  drivers/gpu/drm/nouveau/nouveau_sched.h       |  9 +--
>  drivers/gpu/drm/nouveau/nouveau_uvmm.c        |  8 +--
>  drivers/gpu/drm/panfrost/panfrost_job.c       |  2 +-
>  drivers/gpu/drm/scheduler/sched_main.c        | 37 ++++++----
>  .../gpu/drm/scheduler/tests/mock_scheduler.c  | 68 +++++++----------
> --
>  drivers/gpu/drm/scheduler/tests/sched_tests.h |  1 -
>  drivers/gpu/drm/scheduler/tests/tests_basic.c | 42 ++++++++++++
>  include/drm/gpu_scheduler.h                   | 18 +++++
>  11 files changed, 167 insertions(+), 95 deletions(-)
> 


Pushed to drm-misc-next, with an RB from Tvrtko I had forgot, and
without the misplaced panfrost patch.

Thanks guys. Good to see that we finally solved this issue. Had been
around for quite some time. We celebrate that with a beer or sth at XDC
:)


P.


      parent reply	other threads:[~2025-07-10 15:12 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-07-10 12:54 [PATCH v4 0/8] drm/sched: Fix memory leaks with cancel_job() callback Philipp Stanner
2025-07-10 12:54 ` [PATCH v4 1/8] drm/panfrost: Fix scheduler workqueue bug Philipp Stanner
2025-07-10 12:58   ` Philipp Stanner
2025-07-10 12:54 ` [PATCH v4 2/8] drm/sched: Avoid memory leaks with cancel_job() callback Philipp Stanner
2025-07-10 12:54 ` [PATCH v4 3/8] drm/sched/tests: Implement " Philipp Stanner
2025-07-10 12:54 ` [PATCH v4 4/8] drm/sched/tests: Add unit test for cancel_job() Philipp Stanner
2025-07-10 12:54 ` [PATCH v4 5/8] drm/sched: Warn if pending_list is not empty Philipp Stanner
2025-07-10 13:04   ` Danilo Krummrich
2025-07-10 12:54 ` [PATCH v4 6/8] drm/nouveau: Make fence container helper usable driver-wide Philipp Stanner
2025-07-10 12:54 ` [PATCH v4 7/8] drm/nouveau: Add new callback for scheduler teardown Philipp Stanner
2025-07-10 12:54 ` [PATCH v4 8/8] drm/nouveau: Remove waitque for sched teardown Philipp Stanner
2025-07-10 15:11 ` Philipp Stanner [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=18f514ef3a61c877bc80f403db67a2106f4bdd44.camel@mailbox.org \
    --to=phasta@mailbox.org \
    --cc=airlied@gmail.com \
    --cc=ckoenig.leichtzumerken@gmail.com \
    --cc=dakr@kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=maarten.lankhorst@linux.intel.com \
    --cc=matthew.brost@intel.com \
    --cc=nouveau@lists.freedesktop.org \
    --cc=phasta@kernel.org \
    --cc=pierre-eric.pelloux-prayer@amd.com \
    --cc=simona@ffwll.ch \
    --cc=tvrtko.ursulin@igalia.com \
    --cc=tzimmermann@suse.de \
    /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;
as well as URLs for NNTP newsgroup(s).