diff mbox

PCI: fix ptr_ret.cocci warnings

Message ID 20180711233041.GA39597@lkp-sbx04 (mailing list archive)
State New, archived
Delegated to: Bjorn Helgaas
Headers show

Commit Message

Fengguang Wu July 11, 2018, 11:30 p.m. UTC
From: kbuild test robot <fengguang.wu@intel.com>

drivers/pci/controller/pci-tegra.c:1132:1-3: WARNING: PTR_ERR_OR_ZERO can be used


 Use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR

Generated by: scripts/coccinelle/api/ptr_ret.cocci

Fixes: 6e0832fa432e ("PCI: Collect all native drivers under drivers/pci/controller/")
CC: Shawn Lin <shawn.lin@rock-chips.com>
Signed-off-by: kbuild test robot <fengguang.wu@intel.com>
---

 pci-tegra.c |    5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

Comments

Lorenzo Pieralisi Sept. 18, 2018, 2:18 p.m. UTC | #1
On Thu, Jul 12, 2018 at 07:30:41AM +0800, kbuild test robot wrote:
> From: kbuild test robot <fengguang.wu@intel.com>
> 
> drivers/pci/controller/pci-tegra.c:1132:1-3: WARNING: PTR_ERR_OR_ZERO can be used
> 
> 
>  Use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR
> 
> Generated by: scripts/coccinelle/api/ptr_ret.cocci
> 
> Fixes: 6e0832fa432e ("PCI: Collect all native drivers under drivers/pci/controller/")
> CC: Shawn Lin <shawn.lin@rock-chips.com>
> Signed-off-by: kbuild test robot <fengguang.wu@intel.com>
> ---
> 
>  pci-tegra.c |    5 +----
>  1 file changed, 1 insertion(+), 4 deletions(-)

Thierry,

are you OK with this change ? I will remove the Fixes: tag since
this does not fix anything AFAICS.

Lorenzo

> --- a/drivers/pci/controller/pci-tegra.c
> +++ b/drivers/pci/controller/pci-tegra.c
> @@ -1129,10 +1129,7 @@ static int tegra_pcie_resets_get(struct
>  		return PTR_ERR(pcie->afi_rst);
>  
>  	pcie->pcie_xrst = devm_reset_control_get_exclusive(dev, "pcie_x");
> -	if (IS_ERR(pcie->pcie_xrst))
> -		return PTR_ERR(pcie->pcie_xrst);
> -
> -	return 0;
> +	return PTR_ERR_OR_ZERO(pcie->pcie_xrst);
>  }
>  
>  static int tegra_pcie_phys_get_legacy(struct tegra_pcie *pcie)
Thierry Reding Sept. 18, 2018, 2:47 p.m. UTC | #2
On Tue, Sep 18, 2018 at 03:18:38PM +0100, Lorenzo Pieralisi wrote:
> On Thu, Jul 12, 2018 at 07:30:41AM +0800, kbuild test robot wrote:
> > From: kbuild test robot <fengguang.wu@intel.com>
> > 
> > drivers/pci/controller/pci-tegra.c:1132:1-3: WARNING: PTR_ERR_OR_ZERO can be used
> > 
> > 
> >  Use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR
> > 
> > Generated by: scripts/coccinelle/api/ptr_ret.cocci
> > 
> > Fixes: 6e0832fa432e ("PCI: Collect all native drivers under drivers/pci/controller/")
> > CC: Shawn Lin <shawn.lin@rock-chips.com>
> > Signed-off-by: kbuild test robot <fengguang.wu@intel.com>
> > ---
> > 
> >  pci-tegra.c |    5 +----
> >  1 file changed, 1 insertion(+), 4 deletions(-)
> 
> Thierry,
> 
> are you OK with this change ? I will remove the Fixes: tag since
> this does not fix anything AFAICS.

This has been proposed several times in the past and each time Bjorn and
I have agreed that we'd rather not merge that change. I think the
original is clearer and allows the code to be more easily extended.

I don't know if there's a way to "whitelist" certain drivers or sub-
systems where these kinds of changes are known not to be desired. Or
perhaps there's some way to trick coccinelle into not recognizing this
particular instance.

Then again, it seems wrong to have to work around over-ambitious
semantic patches...

Thierry
Lorenzo Pieralisi Sept. 18, 2018, 4:30 p.m. UTC | #3
On Tue, Sep 18, 2018 at 04:47:37PM +0200, Thierry Reding wrote:
> On Tue, Sep 18, 2018 at 03:18:38PM +0100, Lorenzo Pieralisi wrote:
> > On Thu, Jul 12, 2018 at 07:30:41AM +0800, kbuild test robot wrote:
> > > From: kbuild test robot <fengguang.wu@intel.com>
> > > 
> > > drivers/pci/controller/pci-tegra.c:1132:1-3: WARNING: PTR_ERR_OR_ZERO can be used
> > > 
> > > 
> > >  Use PTR_ERR_OR_ZERO rather than if(IS_ERR(...)) + PTR_ERR
> > > 
> > > Generated by: scripts/coccinelle/api/ptr_ret.cocci
> > > 
> > > Fixes: 6e0832fa432e ("PCI: Collect all native drivers under drivers/pci/controller/")
> > > CC: Shawn Lin <shawn.lin@rock-chips.com>
> > > Signed-off-by: kbuild test robot <fengguang.wu@intel.com>
> > > ---
> > > 
> > >  pci-tegra.c |    5 +----
> > >  1 file changed, 1 insertion(+), 4 deletions(-)
> > 
> > Thierry,
> > 
> > are you OK with this change ? I will remove the Fixes: tag since
> > this does not fix anything AFAICS.
> 
> This has been proposed several times in the past and each time Bjorn and
> I have agreed that we'd rather not merge that change. I think the
> original is clearer and allows the code to be more easily extended.
> 
> I don't know if there's a way to "whitelist" certain drivers or sub-
> systems where these kinds of changes are known not to be desired. Or
> perhaps there's some way to trick coccinelle into not recognizing this
> particular instance.
> 
> Then again, it seems wrong to have to work around over-ambitious
> semantic patches...

I agree with you and Bjorn, I will drop the patches but you have a
point. Certainly these patches aren't fixing anything unless I am
missing something obvious.

Lorenzo
diff mbox

Patch

--- a/drivers/pci/controller/pci-tegra.c
+++ b/drivers/pci/controller/pci-tegra.c
@@ -1129,10 +1129,7 @@  static int tegra_pcie_resets_get(struct
 		return PTR_ERR(pcie->afi_rst);
 
 	pcie->pcie_xrst = devm_reset_control_get_exclusive(dev, "pcie_x");
-	if (IS_ERR(pcie->pcie_xrst))
-		return PTR_ERR(pcie->pcie_xrst);
-
-	return 0;
+	return PTR_ERR_OR_ZERO(pcie->pcie_xrst);
 }
 
 static int tegra_pcie_phys_get_legacy(struct tegra_pcie *pcie)