[U-Boot] [PATCH 2/2] mtd: fix Coverity integer handling issue

Miquel Raynal miquel.raynal at bootlin.com
Mon Apr 8 09:43:59 UTC 2019


Hello,

Miquel Raynal <miquel.raynal at bootlin.com> wrote on Sun, 18 Nov 2018
21:13:47 +0100:

> Hello,
> 
> Miquel Raynal <miquel.raynal at bootlin.com> wrote on Sun, 18 Nov 2018
> 21:11:47 +0100:
> 
> > A Coverity robot reported an integer handling issue
> > (OVERFLOW_BEFORE_WIDEN) in the potentially overflowing expression:
> > 
> >     (mtd_div_by_ws(mtd->size, mtd) - mtd_div_by_ws(offs, mtd)) *
> >     mtd_oobavail(mtd, ops)
> > 
> > While such overflow will certainly never happen due to the numbers
> > handled, it is cleaner to fix this operation anyway.
> > 
> > The problem is that all the maths include 32-bit quantities, while the
> > result is stored in an explicit 64-bit value.
> > 
> > As maxooblen will just be compared with a size_t, let's change the
> > type of the variable to a size_t. This will not fix anything but will
> > clarify a bit the situation. Then, do an explicit cast to fix Coverity
> > warning.
> > 
> > Addresses-Coverity-ID: 184180 ("Integer handling issues")
> > Signed-off-by: Miquel Raynal <miquel.raynal at bootlin.com>
> > ---  
> 
> I forgot to add the link to the corresponding Travis-CI job:
> https://travis-ci.org/miquelraynal/u-boot/builds/456679982

Gentle ping on this series (patch 1 & 2). They do apply cleanly on
current master.

Tom, shall I expect you to take it or is it Jagan's mission?


Thanks,
Miquèl


More information about the U-Boot mailing list