rtc: nct3018y: fix possible NULL dereference
authorAlexandre Belloni <alexandre.belloni@bootlin.com>
Thu, 29 Feb 2024 22:21:27 +0000 (23:21 +0100)
committerAlexandre Belloni <alexandre.belloni@bootlin.com>
Fri, 8 Mar 2024 11:01:21 +0000 (12:01 +0100)
alarm_enable and alarm_flag are allowed to be NULL but will be dereferenced
later by the dev_dbg call.

Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <error27@gmail.com>
Closes: https://lore.kernel.org/r/202305180042.DEzW1pSd-lkp@intel.com/
Link: https://lore.kernel.org/r/20240229222127.1878176-1-alexandre.belloni@bootlin.com
Signed-off-by: Alexandre Belloni <alexandre.belloni@bootlin.com>
drivers/rtc/rtc-nct3018y.c

index f488a18..076d8b9 100644 (file)
@@ -102,6 +102,8 @@ static int nct3018y_get_alarm_mode(struct i2c_client *client, unsigned char *ala
                if (flags < 0)
                        return flags;
                *alarm_enable = flags & NCT3018Y_BIT_AIE;
+               dev_dbg(&client->dev, "%s:alarm_enable:%x\n", __func__, *alarm_enable);
+
        }
 
        if (alarm_flag) {
@@ -110,11 +112,9 @@ static int nct3018y_get_alarm_mode(struct i2c_client *client, unsigned char *ala
                if (flags < 0)
                        return flags;
                *alarm_flag = flags & NCT3018Y_BIT_AF;
+               dev_dbg(&client->dev, "%s:alarm_flag:%x\n", __func__, *alarm_flag);
        }
 
-       dev_dbg(&client->dev, "%s:alarm_enable:%x alarm_flag:%x\n",
-               __func__, *alarm_enable, *alarm_flag);
-
        return 0;
 }