06.05.2020 14:47, Vidya Sagar пишет: > Thanks for pushing this change. > I'm fine with this change as it is attempting to change only the last > occurrence of the (IS_ERR(...)) + PTR_ERR combination. > But, this code was initially written with PTR_ERR_OR_ZERO() itself but > later changed to use (IS_ERR(...)) + PTR_ERR based on the review comment > from Dmitry Osipenko ( https://lkml.org/lkml/2019/6/20/1457 ) > > Adding Dmitry as well to review the change. > > I'm fine with this change. > Reviewed-by: Vidya Sagar <vidyas@xxxxxxxxxx> > > On 05-May-20 8:30 PM, Aishwarya Ramakrishnan wrote: >> External email: Use caution opening links or attachments >> >> >> PTR_ERR_OR_ZERO contains if(IS_ERR(...)) + PTR_ERR. >> >> Generated by: scripts/coccinelle/api/ptr_ret.cocci >> >> Signed-off-by: Aishwarya Ramakrishnan <aishwaryarj100@xxxxxxxxx> >> --- >> drivers/phy/tegra/phy-tegra194-p2u.c | 5 +---- >> 1 file changed, 1 insertion(+), 4 deletions(-) >> >> diff --git a/drivers/phy/tegra/phy-tegra194-p2u.c >> b/drivers/phy/tegra/phy-tegra194-p2u.c >> index 7042bed9feaa..42394d27f4cb 100644 >> --- 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 platform_device >> *pdev) >> 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); >> } Quite some people think that such a change doesn't bring any benefits, it doesn't help readability of the code, it even makes harder to read the code for a human being. IIRC, there were some requests in the past to remove that cocci rule to stop such auto-generated patches to re-occur over and over again. The PTR_ERR_OR_ZERO is good to use in a cases where it's not returned directly, like this: phy_provider = devm_of_phy_provider_register(dev, of_phy_simple_xlate); err = PTR_ERR_OR_ZERO(phy_provider); if (err) return err; return 0;