From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maxime Ripard Subject: Re: [PATCH v2 01/10] media: v4l2-ctrls: Add missing v4l2 ctrl unlock Date: Fri, 20 Apr 2018 09:23:16 +0200 Message-ID: <20180420072316.sifritx54mppgwz3@flea> References: <20180419154124.17512-1-paul.kocialkowski@bootlin.com> <20180419154124.17512-2-paul.kocialkowski@bootlin.com> Reply-To: maxime.ripard-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org Mime-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="yqpvzbuk2a5n4355" Return-path: Sender: linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org Content-Disposition: inline In-Reply-To: <20180419154124.17512-2-paul.kocialkowski-LDxbnhwyfcJBDgjK7y7TUQ@public.gmane.org> List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , To: Paul Kocialkowski Cc: linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-sunxi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org, Mauro Carvalho Chehab , Rob Herring , Mark Rutland , Chen-Yu Tsai , Pawel Osciak , Marek Szyprowski , Kyungmin Park , Hans Verkuil , Sakari Ailus , Philipp Zabel , Arnd Bergmann , Alexandre Courbot , Tomasz Figa List-Id: devicetree@vger.kernel.org --yqpvzbuk2a5n4355 Content-Type: text/plain; charset="UTF-8" Content-Disposition: inline On Thu, Apr 19, 2018 at 05:41:15PM +0200, Paul Kocialkowski wrote: > This adds a missing v4l2_ctrl_unlock call that is required to avoid > deadlocks. Maybe you can explain what the deadlock scenario is? > Signed-off-by: Paul Kocialkowski > --- > 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); > + I'm not sure that this is relevant in this patch. Maxime -- Maxime Ripard, Bootlin (formerly Free Electrons) Embedded Linux and Kernel engineering https://bootlin.com --yqpvzbuk2a5n4355--