public inbox for linux-next@vger.kernel.org
 help / color / mirror / Atom feed
From: Kees Cook <keescook@chromium.org>
To: Boris Brezillon <bbrezillon@kernel.org>
Cc: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>,
	Brian Norris <computersforpeace@gmail.com>,
	"Gustavo A. R. Silva" <gustavo@embeddedor.com>,
	linux-next@vger.kernel.org
Subject: Re: Coverity: nxp_spifi_write_reg(): Integer handling issues
Date: Fri, 10 Apr 2020 13:11:08 -0700	[thread overview]
Message-ID: <202004101308.FEF65E27BA@keescook> (raw)
In-Reply-To: <202004101300.C30EF3B0CB@keescook>

On Fri, Apr 10, 2020 at 01:01:46PM -0700, coverity-bot wrote:
> Hello!
> 
> This is an experimental automated report about issues detected by Coverity
> from a scan of next-20200410 as part of the linux-next weekly scan project:
> https://scan.coverity.com/projects/linux-next-weekly-scan
> 
> You're getting this email because you were associated with the identified
> lines of code (noted below) that were touched by recent commits:
> 
> f617b9587c16 ("mtd: spi-nor: add driver for NXP SPI Flash Interface (SPIFI)")

This commit is from 2015. I see now that this might have gotten
re-identified due to a file naming?

a0900d0195d2 ("mtd: spi-nor: Prepare core / manufacturer code split")

-Kees

> 
> Coverity reported the following:
> 
> *** CID 1324209:  Integer handling issues  (SIGN_EXTENSION)
> /drivers/mtd/spi-nor/controllers/nxp-spifi.c: 162 in nxp_spifi_write_reg()
> 156     	ret = nxp_spifi_set_memory_mode_off(spifi);
> 157     	if (ret)
> 158     		return ret;
> 159
> 160     	cmd = SPIFI_CMD_DOUT |
> 161     	      SPIFI_CMD_DATALEN(len) |
> vvv     CID 1324209:  Integer handling issues  (SIGN_EXTENSION)
> vvv     Suspicious implicit sign extension: "opcode" with type "u8" (8 bits, unsigned) is promoted in "opcode << 24" to type "int" (32 bits, signed), then sign-extended to type "unsigned long" (64 bits, unsigned).  If "opcode << 24" is greater than 0x7FFFFFFF, the upper bits of the result will all be 1.
> 162     	      SPIFI_CMD_OPCODE(opcode) |
> 163     	      SPIFI_CMD_FIELDFORM_ALL_SERIAL |
> 164     	      SPIFI_CMD_FRAMEFORM_OPCODE_ONLY;
> 165     	writel(cmd, spifi->io_base + SPIFI_CMD);
> 166
> 167     	while (len--)
> 
> If this is a false positive, please let us know so we can mark it as
> such, or teach the Coverity rules to be smarter. If not, please make
> sure fixes get into linux-next. :) For patches fixing this, please
> include these lines (but double-check the "Fixes" first):
> 
> Reported-by: coverity-bot <keescook+coverity-bot@chromium.org>
> Addresses-Coverity-ID: 1324209 ("Integer handling issues")
> Fixes: f617b9587c16 ("mtd: spi-nor: add driver for NXP SPI Flash Interface (SPIFI)")
> 
> Human edit: this issue is also repeated again at
> 	drivers/mtd/spi-nor/controllers/nxp-spifi.c: 205
> and
> 	drivers/mtd/spi-nor/controllers/nxp-spifi.c: 138
> 
> Thanks for your attention!
> 
> -- 
> Coverity-bot

-- 
Kees Cook

      reply	other threads:[~2020-04-10 20:11 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-10 20:01 Coverity: nxp_spifi_write_reg(): Integer handling issues coverity-bot
2020-04-10 20:11 ` Kees Cook [this message]

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=202004101308.FEF65E27BA@keescook \
    --to=keescook@chromium.org \
    --cc=bbrezillon@kernel.org \
    --cc=computersforpeace@gmail.com \
    --cc=ezequiel@vanguardiasur.com.ar \
    --cc=gustavo@embeddedor.com \
    --cc=linux-next@vger.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox