On Tue, Nov 17, 2020 at 07:00:32AM +0800, kernel test robot wrote:
From: kernel test robot <lkp(a)intel.com>
drivers/phy/tegra/phy-tegra194-p2u.c:95: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: 133552bf03ed ("phy: Remove CONFIG_ARCH_* check for related subdir in
Makefile")
CC: Tiezhu Yang <yangtiezhu(a)loongson.cn>
Reported-by: kernel test robot <lkp(a)intel.com>
Signed-off-by: kernel test robot <lkp(a)intel.com>
---
tree:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 09162bc32c880a791c6c0668ce0745cf7958f576
commit: 133552bf03edbe3892767a4b64c56e3bed746374 phy: Remove CONFIG_ARCH_* check for
related subdir in Makefile
phy-tegra194-p2u.c | 5 +----
1 file changed, 1 insertion(+), 4 deletions(-)
A similar patch was recently sent out against the pci-tegra driver. That
was perhaps the third time or so that it happened and both the Bjorn
(the PCI maintainer) and I have agreed multiple times in the past that
this isn't an actual improvement.
There are two reasons why I think this is actually worse than the
original: 1) this doesn't look like regular error handling and therefore
becomes more difficult to read and 2) if we ever need to add code
between the devm_of_phy_provider_register() and the final successful
return, we need to go and effectively revert this patch again.
I wonder if there's enough consensus that PTR_ERR_OR_ZERO() is really
that useful.
Thierry
--- a/drivers/phy/tegra/phy-tegra194-p2u.c
+++ b/drivers/phy/tegra/phy-tegra194-p2u.c
@@ -92,10 +92,7 @@ static int tegra_p2u_probe(struct platfo
phy_set_drvdata(generic_phy, phy);
phy_provider = devm_of_phy_provider_register(dev, of_phy_simple_xlate);
- if (IS_ERR(phy_provider))
- return PTR_ERR(phy_provider);
-
- return 0;
+ return PTR_ERR_OR_ZERO(phy_provider);
}
static const struct of_device_id tegra_p2u_id_table[] = {