From: Andi Shyti <andi.shyti@linux.intel.com>
To: Andi Shyti <andi.shyti@linux.intel.com>
Cc: intel-gfx <intel-gfx@lists.freedesktop.org>,
dri-devel <dri-devel@lists.freedesktop.org>,
Chris Wilson <chris.p.wilson@linux.intel.com>,
Joonas Lahtinen <joonas.lahtinen@linux.intel.com>,
Matt Roper <matthew.d.roper@intel.com>,
John Harrison <John.C.Harrison@intel.com>,
stable@vger.kernel.org, Andi Shyti <andi.shyti@kernel.org>,
Tvrtko Ursulin <tursulin@ursulin.net>,
michal.mrozek@intel.com, mark.j.buxton@intel.com
Subject: Re: [PATCH v6 0/3] Disable automatic load CCS load balancing
Date: Tue, 26 Mar 2024 17:24:03 +0100 [thread overview]
Message-ID: <ZgL2o7c0R_Z7shFJ@ashyti-mobl2.lan> (raw)
In-Reply-To: <20240313201955.95716-1-andi.shyti@linux.intel.com>
Hi Michal, Mark,
can you please ack from your side this first batch of changes?
Thanks,
Andi
On Wed, Mar 13, 2024 at 09:19:48PM +0100, Andi Shyti wrote:
> Hi,
>
> this series does basically two things:
>
> 1. Disables automatic load balancing as adviced by the hardware
> workaround.
>
> 2. Assigns all the CCS slices to one single user engine. The user
> will then be able to query only one CCS engine
>
> >From v5 I have created a new file, gt/intel_gt_ccs_mode.c where
> I added the intel_gt_apply_ccs_mode(). In the upcoming patches,
> this file will contain the implementation for dynamic CCS mode
> setting.
>
> Thanks Tvrtko, Matt, John and Joonas for your reviews!
>
> Andi
>
> Changelog
> =========
> v5 -> v6 (thanks Matt for the suggestions in v6)
> - Remove the refactoring and the for_each_available_engine()
> macro and instead do not create the intel_engine_cs structure
> at all.
> - In patch 1 just a trivial reordering of the bit definitions.
>
> v4 -> v5
> - Use the workaround framework to do all the CCS balancing
> settings in order to always apply the modes also when the
> engine resets. Put everything in its own specific function to
> be executed for the first CCS engine encountered. (Thanks
> Matt)
> - Calculate the CCS ID for the CCS mode as the first available
> CCS among all the engines (Thanks Matt)
> - create the intel_gt_ccs_mode.c function to host the CCS
> configuration. We will have it ready for the next series.
> - Fix a selftest that was failing because could not set CCS2.
> - Add the for_each_available_engine() macro to exclude CCS1+ and
> start using it in the hangcheck selftest.
>
> v3 -> v4
> - Reword correctly the comment in the workaround
> - Fix a buffer overflow (Thanks Joonas)
> - Handle properly the fused engines when setting the CCS mode.
>
> v2 -> v3
> - Simplified the algorithm for creating the list of the exported
> uabi engines. (Patch 1) (Thanks, Tvrtko)
> - Consider the fused engines when creating the uabi engine list
> (Patch 2) (Thanks, Matt)
> - Patch 4 now uses a the refactoring from patch 1, in a cleaner
> outcome.
>
> v1 -> v2
> - In Patch 1 use the correct workaround number (thanks Matt).
> - In Patch 2 do not add the extra CCS engines to the exposed
> UABI engine list and adapt the engine counting accordingly
> (thanks Tvrtko).
> - Reword the commit of Patch 2 (thanks John).
>
> Andi Shyti (3):
> drm/i915/gt: Disable HW load balancing for CCS
> drm/i915/gt: Do not generate the command streamer for all the CCS
> drm/i915/gt: Enable only one CCS for compute workload
>
> drivers/gpu/drm/i915/Makefile | 1 +
> drivers/gpu/drm/i915/gt/intel_engine_cs.c | 20 ++++++++---
> drivers/gpu/drm/i915/gt/intel_gt_ccs_mode.c | 39 +++++++++++++++++++++
> drivers/gpu/drm/i915/gt/intel_gt_ccs_mode.h | 13 +++++++
> drivers/gpu/drm/i915/gt/intel_gt_regs.h | 6 ++++
> drivers/gpu/drm/i915/gt/intel_workarounds.c | 30 ++++++++++++++--
> 6 files changed, 103 insertions(+), 6 deletions(-)
> create mode 100644 drivers/gpu/drm/i915/gt/intel_gt_ccs_mode.c
> create mode 100644 drivers/gpu/drm/i915/gt/intel_gt_ccs_mode.h
>
> --
> 2.43.0
next prev parent reply other threads:[~2024-03-26 16:24 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-13 20:19 [PATCH v6 0/3] Disable automatic load CCS load balancing Andi Shyti
2024-03-13 20:19 ` [PATCH v6 1/3] drm/i915/gt: Disable HW load balancing for CCS Andi Shyti
2024-03-13 20:19 ` [PATCH v6 2/3] drm/i915/gt: Do not generate the command streamer for all the CCS Andi Shyti
2024-03-26 16:03 ` Matt Roper
2024-03-26 18:42 ` Andi Shyti
2024-03-26 21:30 ` Matt Roper
2024-03-26 23:16 ` Andi Shyti
2024-03-13 20:19 ` [PATCH v6 3/3] drm/i915/gt: Enable only one CCS for compute workload Andi Shyti
2024-03-26 16:06 ` Matt Roper
2024-03-20 15:06 ` [PATCH v6 0/3] Disable automatic load CCS load balancing Andi Shyti
2024-03-20 15:40 ` Tvrtko Ursulin
2024-03-20 18:02 ` Andi Shyti
2024-03-26 16:21 ` Andi Shyti
2024-03-26 16:24 ` Andi Shyti [this message]
2024-03-26 16:25 ` Mrozek, Michal
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=ZgL2o7c0R_Z7shFJ@ashyti-mobl2.lan \
--to=andi.shyti@linux.intel.com \
--cc=John.C.Harrison@intel.com \
--cc=andi.shyti@kernel.org \
--cc=chris.p.wilson@linux.intel.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=intel-gfx@lists.freedesktop.org \
--cc=joonas.lahtinen@linux.intel.com \
--cc=mark.j.buxton@intel.com \
--cc=matthew.d.roper@intel.com \
--cc=michal.mrozek@intel.com \
--cc=stable@vger.kernel.org \
--cc=tursulin@ursulin.net \
/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