On Wednesday 02 March 2016 13:11:10 Dan Carpenter wrote:
> We accidentally return IS_ERR(priv->base) which is 1 instead of
> PTR_ERR(priv->base) which is the error code.
> 
> Fixes: 6c821bd9edc9 ('net: Add MOXA ART SoCs ethernet driver')
> Signed-off-by: Dan Carpenter <dan.carpen...@oracle.com>

Acked-by: Arnd Bergmann <a...@arndb.de>

nice catch!

> diff --git a/drivers/net/ethernet/moxa/moxart_ether.c 
> b/drivers/net/ethernet/moxa/moxart_ether.c
> index 00cfd95..3e67f45 100644
> --- a/drivers/net/ethernet/moxa/moxart_ether.c
> +++ b/drivers/net/ethernet/moxa/moxart_ether.c
> @@ -474,9 +474,9 @@ static int moxart_mac_probe(struct platform_device *pdev)
>       res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
>       ndev->base_addr = res->start;
>       priv->base = devm_ioremap_resource(p_dev, res);
> -     ret = IS_ERR(priv->base);
> -     if (ret) {
> +     if (IS_ERR(priv->base)) {
>               dev_err(p_dev, "devm_ioremap_resource failed\n");
> +             ret = PTR_ERR(priv->base);
>               goto init_fail;
>       }

Did you find more of these?

it doesn't matter much either way, but if you do multiple such patches,
I'd suggest using a single PTR_ERR_OR_ZERO() instead of IS_ERR()+PTR_ERR().

I have found a couple of drivers in which that leads to better object
code, and avoids a warning about a possibly uninitialized variable
when the function gets inlined into another one (which won't happen
for this driver).

        Arnd

Reply via email to