]> git.ipfire.org Git - thirdparty/linux.git/commit
drm/i915/slpc: Balance the inc/dec for num_waiters
authorVinay Belgaumkar <vinay.belgaumkar@intel.com>
Mon, 28 Apr 2025 18:35:55 +0000 (11:35 -0700)
committerJani Nikula <jani.nikula@intel.com>
Mon, 5 May 2025 09:36:04 +0000 (12:36 +0300)
commit936b73feab5cd7eae8fe3d08a7ac9b1f8ac68042
tree460d68c6d389282c9faff2a4ce349f9a30804c77
parent92a09c47464d040866cf2b4cd052bc60555185fb
drm/i915/slpc: Balance the inc/dec for num_waiters

As seen in some recent failures, SLPC num_waiters value is < 0.
This happens because the inc/dec are not balanced. We should skip
decrement for the same conditions as the increment. Currently, we
do that for power saving profile mode. This patch also ensures that
num_waiters is incremented in the case min_softlimit is at boost
freq. It ensures that we don't reduce the frequency while this request
is in flight.

v2: Add Fixes tags

Closes: https://gitlab.freedesktop.org/drm/i915/kernel/-/issues/13598
Fixes: f864a29afc32 ("drm/i915/slpc: Optmize waitboost for SLPC")
Fixes: 4a82ceb04ad4 ("drm/i915/slpc: Add sysfs for SLPC power profiles")
Cc: Sk Anirban <sk.anirban@intel.com>
Reviewed-by: Sk Anirban <sk.anirban@intel.com>
Signed-off-by: Vinay Belgaumkar <vinay.belgaumkar@intel.com>
Signed-off-by: Daniele Ceraolo Spurio <daniele.ceraolospurio@intel.com>
Link: https://lore.kernel.org/r/20250428183555.3250021-1-vinay.belgaumkar@intel.com
(cherry picked from commit d26e55085f4b7a63677670db827541209257b313)
Signed-off-by: Jani Nikula <jani.nikula@intel.com>
drivers/gpu/drm/i915/gt/intel_rps.c