[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20220201110711.GR1978@kadam>
Date: Tue, 1 Feb 2022 14:07:11 +0300
From: Dan Carpenter <dan.carpenter@...cle.com>
To: "weiyongjun (A)" <weiyongjun1@...wei.com>
Cc: Tobias Waldekranz <tobias@...dekranz.com>,
"David S. Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>, Andrew Lunn <andrew@...n.ch>,
Marcin Wojtas <mw@...ihalf.com>,
Calvin Johnson <calvin.johnson@....nxp.com>,
Markus Koch <markus@...syncing.net>, netdev@...r.kernel.org,
kernel-janitors@...r.kernel.org, Hulk Robot <hulkci@...wei.com>
Subject: Re: [PATCH net-next] net/fsl: xgmac_mdio: fix return value check in
xgmac_mdio_probe()
On Sun, Jan 30, 2022 at 08:58:55AM +0800, weiyongjun (A) wrote:
>
> > On Sat, Jan 29, 2022 at 01:27, Wei Yongjun <weiyongjun1@...wei.com> wrote:
> > > In case of error, the function devm_ioremap() returns NULL pointer
> > > not ERR_PTR(). The IS_ERR() test in the return value check should
> > > be replaced with NULL test.
> > >
> > > Fixes: 1d14eb15dc2c ("net/fsl: xgmac_mdio: Use managed device resources")
> > > Reported-by: Hulk Robot <hulkci@...wei.com>
> > > Signed-off-by: Wei Yongjun <weiyongjun1@...wei.com>
> > Reviewed-by: Tobias Waldekranz <tobias@...dekranz.com>
> >
> > Sorry about that. I started out by using devm_ioremap_resource, which
> > uses the in-band error signaling, and forgot to match the guard when I
> > changed it.
> >
> > I see that this was reported by your CI, do you mind me asking what it
> > is running in the back-end? At least my version of sparse does not seem
> > to catch this.
>
>
> It was reported by coccinelle with follow script:
>
>
> @@
> expression ret, E;
> @@
> ret = \(devm_ioport_map\|
> devm_ioremap\|
> devm_ioremap_wc\|
> devm_irq_alloc_generic_chip\|
> devm_kasprintf\|
> devm_kcalloc\|
> devm_kmalloc\|
> devm_kmalloc_array\|
> devm_kmemdup\|
> devm_kstrdup\|
> devm_kzalloc\|
> \)(...);
> ... when != ret = E
> (
> - IS_ERR(ret)
> + !ret
> |
> - !IS_ERR(ret)
> + ret
> |
> - PTR_ERR(ret)
> + -ENOMEM
> )
>
>
>
> It seems smatch also can report this.
Yeah. I had this patch in my postponed messages but you beat me to
sending it.
The Smatch check for this requires you to have the cross function
database built. I should update it to remove that requirement for
at least the common functions that you have listed.
regards,
dan carpenter
Powered by blists - more mailing lists