From: Michal Wajdeczko <michal.wajdeczko@intel.com>
To: Maarten Lankhorst <dev@lankhorst.se>,
<intel-xe@lists.freedesktop.org>,
Rodrigo Vivi <rodrigo.vivi@intel.com>
Subject: Re: [PATCH v3 1/6] drm/xe: Only have a single drmm release action.
Date: Fri, 22 Aug 2025 22:38:49 +0200 [thread overview]
Message-ID: <9a920dbb-17f9-4c5a-8cf7-a83b9913247d@intel.com> (raw)
In-Reply-To: <20250819101119.511705-9-dev@lankhorst.se>
On 8/19/2025 12:11 PM, Maarten Lankhorst wrote:
> The broken action happened after ggtt_early_fini, so
> it's safe to put the drain_workqueue in there instead of
> creating a new place.
can you share a log with that broken action?
the whole point of having separate devm action here was to
make sure that we will not have any pending work behind
left for the drmm unwind phase, as devm actions, where we
unmap GGTT, will be run before drmm unwind phase
>
> Signed-off-by: Maarten Lankhorst <dev@lankhorst.se>
> Fixes: 89d2835c3680 ("drm/xe: Process deferred GGTT node removals on device unwind")
> Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
> Cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
> ---
> drivers/gpu/drm/xe/xe_ggtt.c | 12 +-----------
> 1 file changed, 1 insertion(+), 11 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_ggtt.c b/drivers/gpu/drm/xe/xe_ggtt.c
> index e03222f5ac5a1..0c6aa3126b43a 100644
> --- a/drivers/gpu/drm/xe/xe_ggtt.c
> +++ b/drivers/gpu/drm/xe/xe_ggtt.c
> @@ -178,6 +178,7 @@ static void ggtt_fini_early(struct drm_device *drm, void *arg)
> {
> struct xe_ggtt *ggtt = arg;
>
> + drain_workqueue(ggtt->wq);
btw, that's redundant since drain_workqueue() is called
implicitly by the below destroy_workqueue()
> destroy_workqueue(ggtt->wq);
> mutex_destroy(&ggtt->lock);
> drm_mm_takedown(&ggtt->mm);
> @@ -238,13 +239,6 @@ int xe_ggtt_init_kunit(struct xe_ggtt *ggtt, u32 reserved, u32 size)
> }
> EXPORT_SYMBOL_IF_KUNIT(xe_ggtt_init_kunit);
>
> -static void dev_fini_ggtt(void *arg)
> -{
> - struct xe_ggtt *ggtt = arg;
> -
> - drain_workqueue(ggtt->wq);
> -}
> -
> /**
> * xe_ggtt_init_early - Early GGTT initialization
> * @ggtt: the &xe_ggtt to be initialized
> @@ -297,10 +291,6 @@ int xe_ggtt_init_early(struct xe_ggtt *ggtt)
> if (err)
> return err;
>
> - err = devm_add_action_or_reset(xe->drm.dev, dev_fini_ggtt, ggtt);
> - if (err)
> - return err;
> -
> if (IS_SRIOV_VF(xe)) {
> err = xe_tile_sriov_vf_prepare_ggtt(ggtt->tile);
> if (err)
next prev parent reply other threads:[~2025-08-22 20:39 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-08-19 10:11 [PATCH v3 0/6] drm/xe: Make struct xe_ggtt private Maarten Lankhorst
2025-08-19 10:11 ` [PATCH v3 1/6] drm/xe: Only have a single drmm release action Maarten Lankhorst
2025-08-22 20:25 ` Rodrigo Vivi
2025-08-22 20:38 ` Michal Wajdeczko [this message]
2025-08-19 10:11 ` [PATCH v3 2/6] drm/mm: Introduce address space shifting Maarten Lankhorst
2025-10-08 21:58 ` Matthew Brost
2025-08-19 10:11 ` [PATCH v3 3/6] drm/xe: Start using ggtt->start in preparation of balloon removal Maarten Lankhorst
2025-08-19 10:11 ` [PATCH v3 4/6] drm/xe: Rewrite GGTT VF initialisation Maarten Lankhorst
2025-10-08 22:00 ` Matthew Brost
2025-08-19 10:11 ` [PATCH v3 5/6] drm/xe: Convert xe_fb_pin to use a callback for insertion into GGTT Maarten Lankhorst
2025-08-19 10:11 ` [PATCH v3 6/6] drm/xe: Move struct xe_ggtt to xe_ggtt.c Maarten Lankhorst
2025-08-19 14:29 ` ✗ CI.checkpatch: warning for drm/xe: Make struct xe_ggtt private. (rev3) Patchwork
2025-08-19 14:30 ` ✓ CI.KUnit: success " Patchwork
2025-08-19 14:45 ` ✗ CI.checksparse: warning " Patchwork
2025-08-19 15:37 ` ✓ Xe.CI.BAT: success " Patchwork
2025-08-20 10:06 ` ✗ Xe.CI.Full: failure " 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=9a920dbb-17f9-4c5a-8cf7-a83b9913247d@intel.com \
--to=michal.wajdeczko@intel.com \
--cc=dev@lankhorst.se \
--cc=intel-xe@lists.freedesktop.org \
--cc=rodrigo.vivi@intel.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