[PATCH] net: lan78xx: Fix possible uninit bug

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The variable buf should be initialized in the function lan78xx_read_reg.
However, there is no return value check, which means the variable buf
could still be uninit. But there is a read later.

Signed-off-by: Yu Hao <yhao016@xxxxxxx>
---
 drivers/net/usb/lan78xx.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/usb/lan78xx.c b/drivers/net/usb/lan78xx.c
index c458c030fadf..4c9318c92fe6 100644
--- a/drivers/net/usb/lan78xx.c
+++ b/drivers/net/usb/lan78xx.c
@@ -1091,8 +1091,11 @@ static int lan78xx_write_raw_otp(struct
lan78xx_net *dev, u32 offset,
    int i;
    u32 buf;
    unsigned long timeout;
+   int ret;

-   lan78xx_read_reg(dev, OTP_PWR_DN, &buf);
+   ret = lan78xx_read_reg(dev, OTP_PWR_DN, &buf);
+   if (ret < 0)
+       return ret;

    if (buf & OTP_PWR_DN_PWRDN_N_) {
        /* clear it and wait to be cleared */
-- 
2.34.1



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux