Hi Hans, On Wed, Feb 26, 2025 at 11:51:48AM +0100, Hans Verkuil wrote: > On 10/02/2025 07:09, Dongcheng Yan wrote: > > +static int lt6911uxe_s_dv_timings(struct v4l2_subdev *sd, unsigned int pad, > > + struct v4l2_dv_timings *timings) > > +{ > > + struct lt6911uxe *lt6911uxe = to_lt6911uxe(sd); > > + struct v4l2_subdev_state *state; > > + > > + state = v4l2_subdev_lock_and_get_active_state(sd); > > + if (v4l2_match_dv_timings(<6911uxe->timings, timings, 0, false)) > > You're not unlocking the state here. I think the driver needs to do that as it's using the state lock to serialise access to its own device context data structure as well. -- Kind regards, Sakari Ailus