Message ID | 3284846.T0rzz6n1As@wuerfel (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 11/30/2015 12:24 PM, Arnd Bergmann wrote: > A recent patch I did fixed two potential uses of uninitialized > variables in the adp8870 and adp8860 drivers. Unfortunately, > I missed another one: > > drivers/video/backlight/adp8860_bl.c: In function 'adp8860_bl_ambient_light_level_show': > drivers/video/backlight/adp8860_bl.c:570:11: warning: 'reg_val' may be used uninitialized in this function > > This does the same change as before in one additional function, > and also changes the check for the return value in a way that > avoids another false positive warning with a similar message. > > Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Michael Hennerich <michael.hennerich@analog.com> > Fixes: 6be3a5a9cd91 ("backlight: adp88x0: Fix uninitialized variable use") > --- > Sorry for missing this third hunk the first time around. > > diff --git a/drivers/video/backlight/adp8860_bl.c b/drivers/video/backlight/adp8860_bl.c > index f0d4c0324580..510e559c060e 100644 > --- a/drivers/video/backlight/adp8860_bl.c > +++ b/drivers/video/backlight/adp8860_bl.c > @@ -566,11 +566,13 @@ static ssize_t adp8860_bl_ambient_light_level_show(struct device *dev, > > mutex_lock(&data->lock); > error = adp8860_read(data->client, ADP8860_PH1LEVL, ®_val); > - ret_val = reg_val; > - error |= adp8860_read(data->client, ADP8860_PH1LEVH, ®_val); > + if (!error) { > + ret_val = reg_val; > + error = adp8860_read(data->client, ADP8860_PH1LEVH, ®_val); > + } > mutex_unlock(&data->lock); > > - if (error < 0) > + if (error) > return error; > > /* Return 13-bit conversion value for the first light sensor */ >
On Tuesday, December 01, 2015 6:33 PM, Michael Hennerich wrote: > On 11/30/2015 12:24 PM, Arnd Bergmann wrote: > > A recent patch I did fixed two potential uses of uninitialized > > variables in the adp8870 and adp8860 drivers. Unfortunately, > > I missed another one: > > > > drivers/video/backlight/adp8860_bl.c: In function 'adp8860_bl_ambient_light_level_show': > > drivers/video/backlight/adp8860_bl.c:570:11: warning: 'reg_val' may be used uninitialized in this > function > > > > This does the same change as before in one additional function, > > and also changes the check for the return value in a way that > > avoids another false positive warning with a similar message. > > > > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > > Acked-by: Michael Hennerich <michael.hennerich@analog.com> Acked-by: Jingoo Han <jingoohan1@gmail.com> Best regards, Jingoo Han > > > Fixes: 6be3a5a9cd91 ("backlight: adp88x0: Fix uninitialized variable use") > > --- > > Sorry for missing this third hunk the first time around. > > > > diff --git a/drivers/video/backlight/adp8860_bl.c b/drivers/video/backlight/adp8860_bl.c > > index f0d4c0324580..510e559c060e 100644 > > --- a/drivers/video/backlight/adp8860_bl.c > > +++ b/drivers/video/backlight/adp8860_bl.c > > @@ -566,11 +566,13 @@ static ssize_t adp8860_bl_ambient_light_level_show(struct device *dev, > > > > mutex_lock(&data->lock); > > error = adp8860_read(data->client, ADP8860_PH1LEVL, ®_val); > > - ret_val = reg_val; > > - error |= adp8860_read(data->client, ADP8860_PH1LEVH, ®_val); > > + if (!error) { > > + ret_val = reg_val; > > + error = adp8860_read(data->client, ADP8860_PH1LEVH, ®_val); > > + } > > mutex_unlock(&data->lock); > > > > - if (error < 0) > > + if (error) > > return error; > > > > /* Return 13-bit conversion value for the first light sensor */ > > > > > -- > Greetings, > Michael > > -- > Analog Devices GmbH Wilhelm-Wagenfeld-Str. 6 80807 Muenchen > Sitz der Gesellschaft: Muenchen; Registergericht: Muenchen HRB 40368; > Geschaeftsfuehrer:Dr.Carsten Suckrow, Thomas Wessel, William A. Martin, > Margaret Seif -- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, 30 Nov 2015, Arnd Bergmann wrote: > A recent patch I did fixed two potential uses of uninitialized > variables in the adp8870 and adp8860 drivers. Unfortunately, > I missed another one: > > drivers/video/backlight/adp8860_bl.c: In function 'adp8860_bl_ambient_light_level_show': > drivers/video/backlight/adp8860_bl.c:570:11: warning: 'reg_val' may be used uninitialized in this function > > This does the same change as before in one additional function, > and also changes the check for the return value in a way that > avoids another false positive warning with a similar message. > > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > Fixes: 6be3a5a9cd91 ("backlight: adp88x0: Fix uninitialized variable use") > --- > Sorry for missing this third hunk the first time around. Where's your diff? Applied anyway, thanks. > diff --git a/drivers/video/backlight/adp8860_bl.c b/drivers/video/backlight/adp8860_bl.c > index f0d4c0324580..510e559c060e 100644 > --- a/drivers/video/backlight/adp8860_bl.c > +++ b/drivers/video/backlight/adp8860_bl.c > @@ -566,11 +566,13 @@ static ssize_t adp8860_bl_ambient_light_level_show(struct device *dev, > > mutex_lock(&data->lock); > error = adp8860_read(data->client, ADP8860_PH1LEVL, ®_val); > - ret_val = reg_val; > - error |= adp8860_read(data->client, ADP8860_PH1LEVH, ®_val); > + if (!error) { > + ret_val = reg_val; > + error = adp8860_read(data->client, ADP8860_PH1LEVH, ®_val); > + } > mutex_unlock(&data->lock); > > - if (error < 0) > + if (error) > return error; > > /* Return 13-bit conversion value for the first light sensor */ >
diff --git a/drivers/video/backlight/adp8860_bl.c b/drivers/video/backlight/adp8860_bl.c index f0d4c0324580..510e559c060e 100644 --- a/drivers/video/backlight/adp8860_bl.c +++ b/drivers/video/backlight/adp8860_bl.c @@ -566,11 +566,13 @@ static ssize_t adp8860_bl_ambient_light_level_show(struct device *dev, mutex_lock(&data->lock); error = adp8860_read(data->client, ADP8860_PH1LEVL, ®_val); - ret_val = reg_val; - error |= adp8860_read(data->client, ADP8860_PH1LEVH, ®_val); + if (!error) { + ret_val = reg_val; + error = adp8860_read(data->client, ADP8860_PH1LEVH, ®_val); + } mutex_unlock(&data->lock); - if (error < 0) + if (error) return error; /* Return 13-bit conversion value for the first light sensor */
A recent patch I did fixed two potential uses of uninitialized variables in the adp8870 and adp8860 drivers. Unfortunately, I missed another one: drivers/video/backlight/adp8860_bl.c: In function 'adp8860_bl_ambient_light_level_show': drivers/video/backlight/adp8860_bl.c:570:11: warning: 'reg_val' may be used uninitialized in this function This does the same change as before in one additional function, and also changes the check for the return value in a way that avoids another false positive warning with a similar message. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Fixes: 6be3a5a9cd91 ("backlight: adp88x0: Fix uninitialized variable use") --- Sorry for missing this third hunk the first time around. -- To unsubscribe from this list: send the line "unsubscribe linux-fbdev" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html