All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dan Carpenter <dan.carpenter@oracle.com>
To: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Cc: Maxime Ripard <mripard@kernel.org>,
	mchehab@kernel.org, linux-media@vger.kernel.org,
	linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org
Subject: Re: [PATCH] media: v4l: cadence: Fix how unsued lanes are handled in 'csi2rx_start()'
Date: Tue, 17 Sep 2019 07:06:13 +0000	[thread overview]
Message-ID: <20190917070613.GA2959@kadam> (raw)
In-Reply-To: <f67787da-dc1c-3e05-c1e2-e8737641dfd0@wanadoo.fr>

On Mon, Sep 16, 2019 at 09:24:26PM +0200, Christophe JAILLET wrote:
> Le 16/09/2019 à 08:28, Dan Carpenter a écrit :
> > On Fri, Sep 13, 2019 at 09:57:09AM +0200, Maxime Ripard wrote:
> > > Hi Christophe,
> > > 
> > > On Thu, Sep 12, 2019 at 10:44:50PM +0200, Christophe JAILLET wrote:
> > > > The 2nd parameter of 'find_first_zero_bit()' is a number of bits, not of
> > > > bytes. So use 'BITS_PER_LONG' instead of 'sizeof(lanes_used)'.
> > > > 
> > > > Fixes: 1fc3b37f34f6 ("media: v4l: cadence: Add Cadence MIPI-CSI2 RX driver")
> > > > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> > > > ---
> > > > This patch is purely speculative. Using BITS_PER_LONG looks logical to me,
> > > > but I'm not 100% sure that it is what is expected here. 'csi2rx->max_lanes'
> > > > could also be a good candidate.
> > > Yeah, csi2rx->max_lanes would make more sense in that context. Could
> > > you resend a new version?
> > This is sort of unrelated, but for Smatch purposes the csi2rx->max_lanes
> > comes from the firmware in csi2rx_parse_dt() and it could be any u8
> > value.
> 
> Hi Dan,
> 
> not sure to follow you.
> 
> csi2rx_probe()
>   --> csi2rx_get_resources()
>      -->  ...
>           dev_cfg = readl(csi2rx->base + CSI2RX_DEVICE_CFG_REG);
>           ...
>           csi2rx->max_lanes = dev_cfg & 7;
>           if (csi2rx->max_lanes > CSI2RX_LANES_MAX) {
>              dev_err(&pdev->dev, "Invalid number of lanes: %u\n",
>                      csi2rx->max_lanes);
>              return -EINVAL;
>           }
> 
> So I guess, that we can trust max_lanes because of the 'if (... >
> CSI2RX_LANES_MAX)' check.
> 
> Did I miss something?

Ugh...  I was looking at ->num_lanes and I was also just totally wrong.
Smatch parses that badly.  Smatch actually parses ->max_lanes correctly
though so that's ok.

Sorry for the noise on this.

regards,
dan carpenter

WARNING: multiple messages have this Message-ID (diff)
From: Dan Carpenter <dan.carpenter@oracle.com>
To: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Cc: Maxime Ripard <mripard@kernel.org>,
	mchehab@kernel.org, linux-media@vger.kernel.org,
	linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org
Subject: Re: [PATCH] media: v4l: cadence: Fix how unsued lanes are handled in 'csi2rx_start()'
Date: Tue, 17 Sep 2019 10:06:13 +0300	[thread overview]
Message-ID: <20190917070613.GA2959@kadam> (raw)
In-Reply-To: <f67787da-dc1c-3e05-c1e2-e8737641dfd0@wanadoo.fr>

On Mon, Sep 16, 2019 at 09:24:26PM +0200, Christophe JAILLET wrote:
> Le 16/09/2019 à 08:28, Dan Carpenter a écrit :
> > On Fri, Sep 13, 2019 at 09:57:09AM +0200, Maxime Ripard wrote:
> > > Hi Christophe,
> > > 
> > > On Thu, Sep 12, 2019 at 10:44:50PM +0200, Christophe JAILLET wrote:
> > > > The 2nd parameter of 'find_first_zero_bit()' is a number of bits, not of
> > > > bytes. So use 'BITS_PER_LONG' instead of 'sizeof(lanes_used)'.
> > > > 
> > > > Fixes: 1fc3b37f34f6 ("media: v4l: cadence: Add Cadence MIPI-CSI2 RX driver")
> > > > Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
> > > > ---
> > > > This patch is purely speculative. Using BITS_PER_LONG looks logical to me,
> > > > but I'm not 100% sure that it is what is expected here. 'csi2rx->max_lanes'
> > > > could also be a good candidate.
> > > Yeah, csi2rx->max_lanes would make more sense in that context. Could
> > > you resend a new version?
> > This is sort of unrelated, but for Smatch purposes the csi2rx->max_lanes
> > comes from the firmware in csi2rx_parse_dt() and it could be any u8
> > value.
> 
> Hi Dan,
> 
> not sure to follow you.
> 
> csi2rx_probe()
>   --> csi2rx_get_resources()
>      -->  ...
>           dev_cfg = readl(csi2rx->base + CSI2RX_DEVICE_CFG_REG);
>           ...
>           csi2rx->max_lanes = dev_cfg & 7;
>           if (csi2rx->max_lanes > CSI2RX_LANES_MAX) {
>              dev_err(&pdev->dev, "Invalid number of lanes: %u\n",
>                      csi2rx->max_lanes);
>              return -EINVAL;
>           }
> 
> So I guess, that we can trust max_lanes because of the 'if (... >
> CSI2RX_LANES_MAX)' check.
> 
> Did I miss something?

Ugh...  I was looking at ->num_lanes and I was also just totally wrong.
Smatch parses that badly.  Smatch actually parses ->max_lanes correctly
though so that's ok.

Sorry for the noise on this.

regards,
dan carpenter


  reply	other threads:[~2019-09-17  7:06 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-12 20:44 [PATCH] media: v4l: cadence: Fix how unsued lanes are handled in 'csi2rx_start()' Christophe JAILLET
2019-09-12 20:44 ` Christophe JAILLET
2019-09-13  7:14 ` walter harms
2019-09-13  7:14   ` walter harms
2019-09-13  7:57 ` Maxime Ripard
2019-09-13  7:57   ` Maxime Ripard
2019-09-16  6:28   ` Dan Carpenter
2019-09-16  6:28     ` Dan Carpenter
2019-09-16 19:24     ` Christophe JAILLET
2019-09-16 19:24       ` Christophe JAILLET
2019-09-17  7:06       ` Dan Carpenter [this message]
2019-09-17  7:06         ` Dan Carpenter
2019-09-17  7:52 ` Marc Gonzalez

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=20190917070613.GA2959@kadam \
    --to=dan.carpenter@oracle.com \
    --cc=christophe.jaillet@wanadoo.fr \
    --cc=kernel-janitors@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-media@vger.kernel.org \
    --cc=mchehab@kernel.org \
    --cc=mripard@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.