Message ID | 20210914110038.GB11657@kili |
---|---|
State | Accepted |
Commit | 19acaae447d77569bb7c893d3a50d7f07587d487 |
Headers | show |
Series | phy: ti: gmii-sel: check of_get_address() for failure | expand |
On 14/09/2021 14:00, Dan Carpenter wrote: > Smatch complains that if of_get_address() returns NULL, then "size" > isn't initialized. Also it would lead to an Oops. > > Fixes: 7f78322cdd67 ("phy: ti: gmii-sel: retrieve ports number and base offset from dt") > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > --- > drivers/phy/ti/phy-gmii-sel.c | 2 ++ > 1 file changed, 2 insertions(+) Thank you. Reviewed-by: Grygorii Strashko <grygorii.strashko@ti.com> > > diff --git a/drivers/phy/ti/phy-gmii-sel.c b/drivers/phy/ti/phy-gmii-sel.c > index 5fd2e8a08bfc..d0ab69750c6b 100644 > --- a/drivers/phy/ti/phy-gmii-sel.c > +++ b/drivers/phy/ti/phy-gmii-sel.c > @@ -320,6 +320,8 @@ static int phy_gmii_sel_init_ports(struct phy_gmii_sel_priv *priv) > u64 size; > > offset = of_get_address(dev->of_node, 0, &size, NULL); > + if (!offset) > + return -EINVAL; > priv->num_ports = size / sizeof(u32); > if (!priv->num_ports) > return -EINVAL; >
On 14-09-21, 14:00, Dan Carpenter wrote: > Smatch complains that if of_get_address() returns NULL, then "size" > isn't initialized. Also it would lead to an Oops. Applied, thanks > > Fixes: 7f78322cdd67 ("phy: ti: gmii-sel: retrieve ports number and base offset from dt") > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > --- > drivers/phy/ti/phy-gmii-sel.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/drivers/phy/ti/phy-gmii-sel.c b/drivers/phy/ti/phy-gmii-sel.c > index 5fd2e8a08bfc..d0ab69750c6b 100644 > --- a/drivers/phy/ti/phy-gmii-sel.c > +++ b/drivers/phy/ti/phy-gmii-sel.c > @@ -320,6 +320,8 @@ static int phy_gmii_sel_init_ports(struct phy_gmii_sel_priv *priv) > u64 size; > > offset = of_get_address(dev->of_node, 0, &size, NULL); > + if (!offset) > + return -EINVAL; > priv->num_ports = size / sizeof(u32); > if (!priv->num_ports) > return -EINVAL; > -- > 2.20.1
diff --git a/drivers/phy/ti/phy-gmii-sel.c b/drivers/phy/ti/phy-gmii-sel.c index 5fd2e8a08bfc..d0ab69750c6b 100644 --- a/drivers/phy/ti/phy-gmii-sel.c +++ b/drivers/phy/ti/phy-gmii-sel.c @@ -320,6 +320,8 @@ static int phy_gmii_sel_init_ports(struct phy_gmii_sel_priv *priv) u64 size; offset = of_get_address(dev->of_node, 0, &size, NULL); + if (!offset) + return -EINVAL; priv->num_ports = size / sizeof(u32); if (!priv->num_ports) return -EINVAL;
Smatch complains that if of_get_address() returns NULL, then "size" isn't initialized. Also it would lead to an Oops. Fixes: 7f78322cdd67 ("phy: ti: gmii-sel: retrieve ports number and base offset from dt") Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> --- drivers/phy/ti/phy-gmii-sel.c | 2 ++ 1 file changed, 2 insertions(+)