lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <AM0PR04MB4481562AFA8A4B9CDDD3E55F88DA0@AM0PR04MB4481.eurprd04.prod.outlook.com>
Date:   Tue, 14 Apr 2020 08:40:19 +0000
From:   Peng Fan <peng.fan@....com>
To:     Uwe Kleine-König 
        <u.kleine-koenig@...gutronix.de>
CC:     "shawnguo@...nel.org" <shawnguo@...nel.org>,
        "s.hauer@...gutronix.de" <s.hauer@...gutronix.de>,
        "jassisinghbrar@...il.com" <jassisinghbrar@...il.com>,
        "o.rempel@...gutronix.de" <o.rempel@...gutronix.de>,
        Leonard Crestez <leonard.crestez@....com>,
        Aisheng Dong <aisheng.dong@....com>,
        Anson Huang <anson.huang@....com>,
        "linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
        dl-linux-imx <linux-imx@....com>,
        "kernel@...gutronix.de" <kernel@...gutronix.de>,
        "festevam@...il.com" <festevam@...il.com>,
        "linux-arm-kernel@...ts.infradead.org" 
        <linux-arm-kernel@...ts.infradead.org>
Subject: RE: [PATCH] mailbox: imx-mailbox: fix scu msg header size check

> Subject: Re: [PATCH] mailbox: imx-mailbox: fix scu msg header size check
> 
> On Tue, Apr 14, 2020 at 04:10:26PM +0800, peng.fan@....com wrote:
> > From: Peng Fan <peng.fan@....com>
> >
> > The i.MX8 SCU message header size is the number of "u32" elements, not
> > "u8", so fix the check.
> >
> > Reported-by: coverity-bot <keescook+coverity-bot@...omium.org>
> > Addresses-Coverity-ID: 1461658 ("Memory - corruptions")
> > Signed-off-by: Peng Fan <peng.fan@....com>
> > ---
> >
> > V2:
> >  I not include the fixes tag, since this patch still in next tree.
> >
> >  drivers/mailbox/imx-mailbox.c | 8 ++++----
> >  1 file changed, 4 insertions(+), 4 deletions(-)
> >
> > diff --git a/drivers/mailbox/imx-mailbox.c
> > b/drivers/mailbox/imx-mailbox.c index 7906624a731c..c2398cb63ea0
> > 100644
> > --- a/drivers/mailbox/imx-mailbox.c
> > +++ b/drivers/mailbox/imx-mailbox.c
> > @@ -154,12 +154,12 @@ static int imx_mu_scu_tx(struct imx_mu_priv
> > *priv,
> >
> >  	switch (cp->type) {
> >  	case IMX_MU_TYPE_TX:
> > -		if (msg->hdr.size > sizeof(*msg)) {
> > +		if (msg->hdr.size > (sizeof(*msg) / 4)) {
> 
> No need for the parenthesis. Maybe a comment would be helpful here,
> something like:
> 
> 	/*
> 	 * msg->hdr.size specifies the number of u32 words while sizeof
> 	 * yields bytes.
> 	 */

V2 will have the update.

> 
> >  			/*
> >  			 * The real message size can be different to
> >  			 * struct imx_sc_rpc_msg_max size
> >  			 */
> > -			dev_err(priv->dev, "Exceed max msg size (%zu) on TX,
> got: %i\n", sizeof(*msg), msg->hdr.size);
> > +			dev_err(priv->dev, "Exceed max msg size (%zu) on TX,
> got: %i\n",
> > +sizeof(*msg) / 4, msg->hdr.size);
> 
> The unit here is also "number of u32 words", maybe bytes is more natural?

ok. Will change to msg->hdr.size << 2 keeping sizeof(*msg).

> And I suggesting specifying the unit in the error message.

Is this ok to you?
dev_err(priv->dev, "Exceed max msg size (%zu) on TX, got: %i, 
msg->hdr.size: %i\n", sizeof(*msg), msg->hdr.size << 2, msg->hdr.size);

Thanks,
Peng.

> 
> Best regards
> Uwe
> 
> --
> Pengutronix e.K.                           | Uwe Kleine-König
> |
> Industrial Linux Solutions                 |
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fwww.
> pengutronix.de%2F&amp;data=02%7C01%7Cpeng.fan%40nxp.com%7Ca6a32
> 1daf8f84601a28808d7e04d8def%7C686ea1d3bc2b4c6fa92cd99c5c301635%
> 7C0%7C0%7C637224496010304343&amp;sdata=GebTJ82O2xOf52yISwVZTM
> 6s2q%2Blar533PAGnm%2FAPHI%3D&amp;reserved=0 |

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ