From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753466AbbGNUXe (ORCPT ); Tue, 14 Jul 2015 16:23:34 -0400 Received: from mail-gw3-out.broadcom.com ([216.31.210.64]:32968 "EHLO mail-gw3-out.broadcom.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753123AbbGNUXc (ORCPT ); Tue, 14 Jul 2015 16:23:32 -0400 X-IronPort-AV: E=Sophos;i="5.15,474,1432623600"; d="scan'208";a="69666090" Message-ID: <55A56FBB.20203@broadcom.com> Date: Tue, 14 Jul 2015 13:23:23 -0700 From: Ray Jui User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.7.0 MIME-Version: 1.0 To: Bjorn Helgaas , SF Markus Elfring CC: Scott Branden , , , , LKML , , Hauke Mehrtens , "Julia Lawall" Subject: Re: [PATCH] PCI-iproc: Delete unnecessary checks before two function calls References: <530C5E18.1020800@users.sourceforge.net> <530CD2C4.4050903@users.sourceforge.net> <530CF8FF.8080600@users.sourceforge.net> <530DD06F.4090703@users.sourceforge.net> <5317A59D.4@users.sourceforge.net> <55900A20.5070407@users.sourceforge.net> <20150714201059.GG24416@google.com> In-Reply-To: <20150714201059.GG24416@google.com> Content-Type: text/plain; charset="windows-1252" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Bjorn, On 7/14/2015 1:10 PM, Bjorn Helgaas wrote: > On Sun, Jun 28, 2015 at 04:52:16PM +0200, SF Markus Elfring wrote: >> From: Markus Elfring >> Date: Sun, 28 Jun 2015 16:42:04 +0200 >> >> The functions phy_exit() and phy_power_off() test whether their argument >> is NULL and then return immediately. >> Thus the test around the calls is not needed. >> >> This issue was detected by using the Coccinelle software. >> >> Signed-off-by: Markus Elfring > > I haven't seen a followup to Ray's review, but in the interest of making > progress, I updated and applied the patch as appended. I also reviewed > other phy_*() calls under drivers/pci, and they all look OK (with no > unnecessary tests for NULL). > > This is on the pci/host-iproc branch for v4.3. > Hmmm....I searched my mailbox but cannot find an email with this patch (while I remember I reviewed and commented on the initial version of this patch). It must have gone into some sub-folder or deleted by me by accident. My bad. Nevertheless,the current patch looks good to me! Thanks, Ray >> --- >> drivers/pci/host/pcie-iproc.c | 7 ++----- >> 1 file changed, 2 insertions(+), 5 deletions(-) >> >> diff --git a/drivers/pci/host/pcie-iproc.c b/drivers/pci/host/pcie-iproc.c >> index d77481e..f875821 100644 >> --- a/drivers/pci/host/pcie-iproc.c >> +++ b/drivers/pci/host/pcie-iproc.c >> @@ -239,12 +239,9 @@ err_rm_root_bus: >> pci_remove_root_bus(bus); >> >> err_power_off_phy: >> - if (pcie->phy) >> - phy_power_off(pcie->phy); >> + phy_power_off(pcie->phy); >> err_exit_phy: >> - if (pcie->phy) >> - phy_exit(pcie->phy); >> - >> + phy_exit(pcie->phy); >> return ret; >> } >> EXPORT_SYMBOL(iproc_pcie_setup); >> -- >> 2.4.4 > > commit 55b5e16332eb9ffc1cbaf975585f4521417ab427 > Author: Markus Elfring > Date: Sun Jun 28 16:42:04 2015 +0200 > > PCI: iproc: Delete unnecessary checks before phy calls > > The functions phy_exit() and phy_power_off() test whether their argument is > NULL and then return immediately. Thus the test around the calls is not > needed. > > This issue was detected by using the Coccinelle software. > > [bhelgaas: also phy_init() and phy_power_on(), as Ray Jui suggested] > [bhelgaas: also remove tests in iproc_pcie_remove()] > Signed-off-by: Markus Elfring > Signed-off-by: Bjorn Helgaas > > diff --git a/drivers/pci/host/pcie-iproc.c b/drivers/pci/host/pcie-iproc.c > index d77481e..9a00dca 100644 > --- a/drivers/pci/host/pcie-iproc.c > +++ b/drivers/pci/host/pcie-iproc.c > @@ -191,19 +191,16 @@ int iproc_pcie_setup(struct iproc_pcie *pcie, struct list_head *res) > if (!pcie || !pcie->dev || !pcie->base) > return -EINVAL; > > - if (pcie->phy) { > - ret = phy_init(pcie->phy); > - if (ret) { > - dev_err(pcie->dev, "unable to initialize PCIe PHY\n"); > - return ret; > - } > - > - ret = phy_power_on(pcie->phy); > - if (ret) { > - dev_err(pcie->dev, "unable to power on PCIe PHY\n"); > - goto err_exit_phy; > - } > + ret = phy_init(pcie->phy); > + if (ret) { > + dev_err(pcie->dev, "unable to initialize PCIe PHY\n"); > + return ret; > + } > > + ret = phy_power_on(pcie->phy); > + if (ret) { > + dev_err(pcie->dev, "unable to power on PCIe PHY\n"); > + goto err_exit_phy; > } > > iproc_pcie_reset(pcie); > @@ -239,12 +236,9 @@ err_rm_root_bus: > pci_remove_root_bus(bus); > > err_power_off_phy: > - if (pcie->phy) > - phy_power_off(pcie->phy); > + phy_power_off(pcie->phy); > err_exit_phy: > - if (pcie->phy) > - phy_exit(pcie->phy); > - > + phy_exit(pcie->phy); > return ret; > } > EXPORT_SYMBOL(iproc_pcie_setup); > @@ -254,10 +248,8 @@ int iproc_pcie_remove(struct iproc_pcie *pcie) > pci_stop_root_bus(pcie->root_bus); > pci_remove_root_bus(pcie->root_bus); > > - if (pcie->phy) { > - phy_power_off(pcie->phy); > - phy_exit(pcie->phy); > - } > + phy_power_off(pcie->phy); > + phy_exit(pcie->phy); > > return 0; > } >