On 04/19/18 17:41, Paul Kocialkowski wrote: > This adds a missing v4l2_ctrl_unlock call that is required to avoid > deadlocks. > > Signed-off-by: Paul Kocialkowski <paul.kocialkowski@xxxxxxxxxxx> > --- > drivers/media/v4l2-core/v4l2-ctrls.c | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/drivers/media/v4l2-core/v4l2-ctrls.c b/drivers/media/v4l2-core/v4l2-ctrls.c > index f67e9f5531fa..ba05a8b9a095 100644 > --- a/drivers/media/v4l2-core/v4l2-ctrls.c > +++ b/drivers/media/v4l2-core/v4l2-ctrls.c > @@ -3614,10 +3614,12 @@ void v4l2_ctrl_request_complete(struct media_request *req, > continue; > > v4l2_ctrl_lock(ctrl); > + > if (ref->req) > ptr_to_ptr(ctrl, ref->req->p_req, ref->p_req); > else > ptr_to_ptr(ctrl, ctrl->p_cur, ref->p_req); > + > v4l2_ctrl_unlock(ctrl); > } > > @@ -3677,8 +3679,11 @@ void v4l2_ctrl_request_setup(struct media_request *req, > } > } > } > - if (!have_new_data) > + > + if (!have_new_data) { > + v4l2_ctrl_unlock(master); > continue; > + } Oops! Thanks for finding this. I'll fold this into the relevant patch in my tree. > > for (i = 0; i < master->ncontrols; i++) { > if (master->cluster[i]) { > Regards, Hans -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html