> -----Original Message----- > From: Intel-gfx <intel-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Ville > Syrjala > Sent: Monday, June 20, 2022 9:29 PM > To: intel-gfx@xxxxxxxxxxxxxxxxxxxxx > Subject: [PATCH 2/2] drm/i915/fbc: Use lockdep_assert_held() > > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > Replace the mutex_is_locked() stuff with lockdep_assert_held() since that's what > it's there for. > > Asoo sprinkle these around so that we have more or less mirrored coverate for > the enable vs. disable instead of the current situation where the asserts seem to > be more or less randomly thrown around. > Reviewed-by: Mika Kahola <mika.kahola@xxxxxxxxx> > Signed-off-by: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/i915/display/intel_fbc.c | 17 ++++++++++------- > 1 file changed, 10 insertions(+), 7 deletions(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_fbc.c > b/drivers/gpu/drm/i915/display/intel_fbc.c > index 77669e03b9f7..db1c0eb508fa 100644 > --- a/drivers/gpu/drm/i915/display/intel_fbc.c > +++ b/drivers/gpu/drm/i915/display/intel_fbc.c > @@ -669,6 +669,7 @@ static void intel_fbc_nuke(struct intel_fbc *fbc) { > struct drm_i915_private *i915 = fbc->i915; > > + lockdep_assert_held(&fbc->lock); > drm_WARN_ON(&i915->drm, fbc->flip_pending); > > trace_intel_fbc_nuke(fbc->state.plane); > @@ -678,6 +679,8 @@ static void intel_fbc_nuke(struct intel_fbc *fbc) > > static void intel_fbc_activate(struct intel_fbc *fbc) { > + lockdep_assert_held(&fbc->lock); > + > intel_fbc_hw_activate(fbc); > intel_fbc_nuke(fbc); > > @@ -686,9 +689,7 @@ static void intel_fbc_activate(struct intel_fbc *fbc) > > static void intel_fbc_deactivate(struct intel_fbc *fbc, const char *reason) { > - struct drm_i915_private *i915 = fbc->i915; > - > - drm_WARN_ON(&i915->drm, !mutex_is_locked(&fbc->lock)); > + lockdep_assert_held(&fbc->lock); > > if (fbc->active) > intel_fbc_hw_deactivate(fbc); > @@ -1220,6 +1221,8 @@ static bool __intel_fbc_pre_update(struct > intel_atomic_state *state, > struct intel_fbc *fbc = plane->fbc; > bool need_vblank_wait = false; > > + lockdep_assert_held(&fbc->lock); > + > fbc->flip_pending = true; > > if (intel_fbc_can_flip_nuke(state, crtc, plane)) @@ -1277,7 +1280,7 @@ > static void __intel_fbc_disable(struct intel_fbc *fbc) > struct drm_i915_private *i915 = fbc->i915; > struct intel_plane *plane = fbc->state.plane; > > - drm_WARN_ON(&i915->drm, !mutex_is_locked(&fbc->lock)); > + lockdep_assert_held(&fbc->lock); > drm_WARN_ON(&i915->drm, fbc->active); > > drm_dbg_kms(&i915->drm, "Disabling FBC on [PLANE:%d:%s]\n", @@ - > 1292,9 +1295,7 @@ static void __intel_fbc_disable(struct intel_fbc *fbc) > > static void __intel_fbc_post_update(struct intel_fbc *fbc) { > - struct drm_i915_private *i915 = fbc->i915; > - > - drm_WARN_ON(&i915->drm, !mutex_is_locked(&fbc->lock)); > + lockdep_assert_held(&fbc->lock); > > fbc->flip_pending = false; > > @@ -1430,6 +1431,8 @@ static void __intel_fbc_enable(struct > intel_atomic_state *state, > intel_atomic_get_new_plane_state(state, plane); > struct intel_fbc *fbc = plane->fbc; > > + lockdep_assert_held(&fbc->lock); > + > if (fbc->state.plane) { > if (fbc->state.plane != plane) > return; > -- > 2.35.1