[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20190206033036.22729-1-yzhai003@ucr.edu>
Date: Tue, 5 Feb 2019 19:30:36 -0800
From: Yizhuo <yzhai003@....edu>
To: unlisted-recipients:; (no To-header on input)
Cc: csong@...ucr.edu, zhiyunq@...ucr.edu, Yizhuo <yzhai003@....edu>,
Patrice Chotard <patrice.chotard@...com>,
Kishon Vijay Abraham I <kishon@...com>,
linux-arm-kernel@...ts.infradead.org, linux-kernel@...r.kernel.org
Subject: [PATCH] phy: Variable "val" in function miphy_osc_is_ready() could be uninitialized
In function miphy_osc_is_ready(), local variable "val"
could be uninitalized. if function regmap_read() returns
-EINVAL. However, this value is used in if statement.
This is potentially unsafe.
Signed-off-by: Yizhuo <yzhai003@....edu>
---
drivers/phy/st/phy-miphy28lp.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/drivers/phy/st/phy-miphy28lp.c b/drivers/phy/st/phy-miphy28lp.c
index 213e2e15339c..40c7c0a611a0 100644
--- a/drivers/phy/st/phy-miphy28lp.c
+++ b/drivers/phy/st/phy-miphy28lp.c
@@ -835,7 +835,8 @@ static int miphy_osc_is_ready(struct miphy28lp_phy *miphy_phy)
{
struct miphy28lp_dev *miphy_dev = miphy_phy->phydev;
unsigned long finish = jiffies + 5 * HZ;
- u32 val;
+ u32 val = 0;
+ int ret;
if (!miphy_phy->osc_rdy)
return 0;
@@ -844,8 +845,10 @@ static int miphy_osc_is_ready(struct miphy28lp_phy *miphy_phy)
return -EINVAL;
do {
- regmap_read(miphy_dev->regmap,
+ ret = regmap_read(miphy_dev->regmap,
miphy_phy->syscfg_reg[SYSCFG_STATUS], &val);
+ if (ret)
+ return ret;
if ((val & MIPHY_OSC_RDY) != MIPHY_OSC_RDY)
cpu_relax();
--
2.17.1
Powered by blists - more mailing lists