lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Wed, 6 May 2020 18:40:25 +0300
From:   Dmitry Osipenko <digetx@...il.com>
To:     Vidya Sagar <vidyas@...dia.com>,
        Aishwarya Ramakrishnan <aishwaryarj100@...il.com>,
        Kishon Vijay Abraham I <kishon@...com>,
        Thierry Reding <thierry.reding@...il.com>,
        Jonathan Hunter <jonathanh@...dia.com>,
        Lorenzo Pieralisi <lorenzo.pieralisi@....com>,
        linux-kernel@...r.kernel.org, linux-tegra@...r.kernel.org,
        Julia Lawall <julia.lawall@...ia.fr>
Subject: Re: [PATCH] phy: tegra: Use PTR_ERR_OR_ZERO() to simplify code

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@...dia.com>
> 
> 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@...il.com>
>> ---
>>   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;

Powered by blists - more mailing lists