On Wed, Feb 26, 2025 at 11:34:31AM +0000, Sakari Ailus wrote: > 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. Oops. I misread the comment and the code. Please ignore. -- Sakari Ailus