Messages in this thread | | | Date | Wed, 8 Apr 2015 07:32:56 +0800 | Subject | Re: [PATCH] phy: core: Fix error checking in (devm_)phy_optional_get | From | Axel Lin <> |
| |
2015-04-07 22:21 GMT+08:00 Kishon Vijay Abraham I <kishon@ti.com>: > Hi, > > On Tuesday 07 April 2015 05:13 PM, Axel Lin wrote: >> >> Don't pass valid pointer to PTR_ERR, use PTR_ERR(phy) only when >> IS_ERR(phy) is true. >> >> Signed-off-by: Axel Lin <axel.lin@ingics.com> >> --- >> drivers/phy/phy-core.c | 12 ++++++++---- >> 1 file changed, 8 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/phy/phy-core.c b/drivers/phy/phy-core.c >> index 3791838f..f112fff 100644 >> --- a/drivers/phy/phy-core.c >> +++ b/drivers/phy/phy-core.c >> @@ -530,8 +530,10 @@ struct phy *phy_optional_get(struct device *dev, >> const char *string) >> { >> struct phy *phy = phy_get(dev, string); >> >> - if (PTR_ERR(phy) == -ENODEV) >> - phy = NULL; >> + if (IS_ERR(phy)) { >> + if (PTR_ERR(phy) == -ENODEV) > > > This can simply be (IS_ERR(phy) && (PTR_ERR(phy) == -ENODEV)). ok, I just sent v2.
> But I don't see a problem passing a valid pointer to PTR_ERR here. I'm not very sure if it's correct to do so. My understanding is the PTR_ERR is supposed to be used for invalid pointer.
Regards, Axel
| |