On Thu, Apr 28, 2022 at 02:10:56PM -0700, José Roberto de Souza wrote: > Frontbuffer updates were scheduling the execution of DRRS work thread > even if DRRS is not active. > There was no issues with it because intel_drrs_downclock_work() checks > if DRRS is active but there is no reason to keep scheduling this work > thread and wasting CPU time. > > Cc: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > Signed-off-by: José Roberto de Souza <jose.souza@xxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_drrs.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/gpu/drm/i915/display/intel_drrs.c b/drivers/gpu/drm/i915/display/intel_drrs.c > index 166caf293f7bc..04bc296761be0 100644 > --- a/drivers/gpu/drm/i915/display/intel_drrs.c > +++ b/drivers/gpu/drm/i915/display/intel_drrs.c > @@ -236,6 +236,11 @@ static void intel_drrs_frontbuffer_update(struct drm_i915_private *dev_priv, > else > crtc->drrs.busy_frontbuffer_bits &= ~frontbuffer_bits; > > + if (!intel_drrs_is_active(crtc)) { > + mutex_unlock(&crtc->drrs.mutex); > + continue; > + } Should be impossible due to crtc->drrs.frontbuffer_bits==0. > + > /* flush/invalidate means busy screen hence upclock */ > intel_drrs_set_state(crtc, DRRS_REFRESH_RATE_HIGH); > > -- > 2.36.0 -- Ville Syrjälä Intel