Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: Maciej Patelczyk <maciej.patelczyk@intel.com>
To: intel-xe@lists.freedesktop.org
Cc: lucas.demarchi@intel.com, raag.jadav@intel.com,
	Maciej Patelczyk <maciej.patelczyk@intel.com>
Subject: [PATCH v3 0/2] drm/xe: adding wait helper for gt async reset
Date: Wed, 11 Dec 2024 12:17:25 +0100	[thread overview]
Message-ID: <20241211111727.1481476-1-maciej.patelczyk@intel.com> (raw)

GT reset is asynchronous. However, in few places there is an explicit
wait for reset to finish via flush_work.
Providing a synchronous gt reset version and additionally wait helper

The usage of asynchronous reset in sysfs gt0/tile0/ccs_mode creates
a situation in which a user after changing ccs_mode with immediate
query can receive only partial configuration due to ongoing reset.
For instance a single compute engine where 4 were requested.
This sometimes happens in the EU Debugger tests leading to skips or
even failures (sysfs not accessible).
This forces usage of sleep() in tests to wait for reset to complete.

The first patch provides xe_gt_reset and a helper xe_gt_reset_wait.
The second patch makes ccs_mode sysfs write wait for reset to
finish.

v3: - xe_gt_reset_wait to xe_gt_wait_for_reset
    - xe_gt_debugfs.c: force_reset_sync() calls xe_gt_reset().

Maciej Patelczyk (2):
  drm/xe: introduce xe_gt_reset and xe_gt_wait_for_reset
  drm/xe: make change ccs_mode a synchronous action

 drivers/gpu/drm/xe/tests/xe_bo.c    |  7 +++----
 drivers/gpu/drm/xe/tests/xe_mocs.c  |  3 +--
 drivers/gpu/drm/xe/xe_gt.h          | 25 +++++++++++++++++++++++++
 drivers/gpu/drm/xe/xe_gt_ccs_mode.c |  2 +-
 drivers/gpu/drm/xe/xe_gt_debugfs.c  |  4 +---
 5 files changed, 31 insertions(+), 10 deletions(-)

--
2.43.0

             reply	other threads:[~2024-12-11 11:17 UTC|newest]

Thread overview: 22+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-12-11 11:17 Maciej Patelczyk [this message]
2024-12-11 11:17 ` [PATCH v3 1/2] drm/xe: introduce xe_gt_reset and xe_gt_wait_for_reset Maciej Patelczyk
2024-12-11 11:39   ` Nirmoy Das
2024-12-11 11:17 ` [PATCH v3 2/2] drm/xe: make change ccs_mode a synchronous action Maciej Patelczyk
2024-12-11 11:33   ` Nirmoy Das
2024-12-11 11:59 ` ✓ CI.Patch_applied: success for drm/xe: adding wait helper for gt async reset (rev3) Patchwork
2024-12-11 11:59 ` ✓ CI.checkpatch: " Patchwork
2024-12-11 12:00 ` ✓ CI.KUnit: " Patchwork
2024-12-11 12:18 ` ✓ CI.Build: " Patchwork
2024-12-11 12:20 ` ✓ CI.Hooks: " Patchwork
2024-12-11 12:22 ` ✓ CI.checksparse: " Patchwork
2024-12-12  6:43 ` ✓ CI.BAT: " Patchwork
2024-12-17 11:25 ` ✓ CI.Patch_applied: success for drm/xe: adding wait helper for gt async reset (rev4) Patchwork
2024-12-17 11:25 ` ✓ CI.checkpatch: " Patchwork
2024-12-17 11:27 ` ✓ CI.KUnit: " Patchwork
2024-12-17 11:45 ` ✓ CI.Build: " Patchwork
2024-12-17 11:47 ` ✓ CI.Hooks: " Patchwork
2024-12-17 11:48 ` ✓ CI.checksparse: " Patchwork
2024-12-17 12:09 ` ✓ Xe.CI.BAT: " Patchwork
2024-12-17 19:49 ` ✗ Xe.CI.Full: failure " Patchwork
2024-12-20 10:05   ` Maciej Patelczyk
2025-01-13  9:50     ` Nirmoy Das

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=20241211111727.1481476-1-maciej.patelczyk@intel.com \
    --to=maciej.patelczyk@intel.com \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=lucas.demarchi@intel.com \
    --cc=raag.jadav@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