All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
To: Hans de Goede <hdegoede@redhat.com>
Cc: Mauro Carvalho Chehab <mchehab@kernel.org>, linux-media@vger.kernel.org
Subject: Re: [PATCH] media: i2c: ov5648: Fix lockdep error
Date: Fri, 26 Nov 2021 11:08:41 +0100	[thread overview]
Message-ID: <YaCyKYgMwDK4hlNv@aptenodytes> (raw)
In-Reply-To: <20211125203156.825539-1-hdegoede@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 1551 bytes --]

Hi Hans,

On Thu 25 Nov 21, 21:31, Hans de Goede wrote:
> ov5648_state_init() calls ov5648_state_mipi_configure() which uses
> __v4l2_ctrl_s_ctrl[_int64](). This means that sensor->mutex (which
> is also sensor->ctrls.handler.lock) must be locked before calling
> ov5648_state_init().
> 
> ov5648_state_mipi_configure() is also used in other places where
> the lock is already held so it cannot be changed itself.
> 
> Note this is based on an identical (tested) fix for the ov8865 driver,
> this has only been compile-tested.

Good catch, thanks!

Though I think it would look slightly better to have the lock in the
ov5648_state_init function itself rather than in the probe.
I guess the same applies to the ov8865 fix, if it's not too late.

Cheers,

Paul

> Cc: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
>  drivers/media/i2c/ov5648.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/media/i2c/ov5648.c b/drivers/media/i2c/ov5648.c
> index 947d437ed0ef..9f24bdccf50f 100644
> --- a/drivers/media/i2c/ov5648.c
> +++ b/drivers/media/i2c/ov5648.c
> @@ -2546,7 +2546,9 @@ static int ov5648_probe(struct i2c_client *client)
>  	if (ret)
>  		goto error_mutex;
>  
> +	mutex_lock(&sensor->mutex);
>  	ret = ov5648_state_init(sensor);
> +	mutex_unlock(&sensor->mutex);
>  	if (ret)
>  		goto error_ctrls;
>  
> -- 
> 2.33.1
> 

-- 
Paul Kocialkowski, Bootlin
Embedded Linux and kernel engineering
https://bootlin.com

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 488 bytes --]

  reply	other threads:[~2021-11-26 10:10 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-25 20:31 [PATCH] media: i2c: ov5648: Fix lockdep error Hans de Goede
2021-11-26 10:08 ` Paul Kocialkowski [this message]
2021-11-26 11:04   ` Hans de Goede

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=YaCyKYgMwDK4hlNv@aptenodytes \
    --to=paul.kocialkowski@bootlin.com \
    --cc=hdegoede@redhat.com \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.