power: bq27xxx_battery: fix signedness bug in bq27xxx_battery_read_health()
Author: Andrzej Hajda <a.hajda@samsung.com>
We need flags to be signed for the error handling to work.
The problem has been detected using proposed semantic patch
scripts/coccinelle/tests/unsigned_lesser_than_zero.cocci [1].
[1]: http://permalink.gmane.org/gmane.linux.kernel/2038576
Fixes: 74aab849f342 ('power: bq27xxx_battery: Cleanup health checking')
Signed-off-by: Andrzej Hajda
Signed-off-by: Dan Carpenter
Acked-By: Pali Rohár
Acked-by: Andrew F. Davis
Signed-off-by: Sebastian Reichel
---
drivers/power/bq27xxx_battery.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/power/bq27xxx_battery.c b/drivers/power/bq27xxx_battery.c
index 473aa2f..994c78d 100644
--- a/drivers/power/bq27xxx_battery.c
+++ b/drivers/power/bq27xxx_battery.c
@@ -691,7 +691,7 @@ static bool bq27xxx_battery_dead(struct bq27xxx_device_info *di, u16 flags)
*/
static int bq27xxx_battery_read_health(struct bq27xxx_device_info *di)
{
- u16 flags;
+ int flags;
flags = bq27xxx_read(di, BQ27XXX_REG_FLAGS, false);
if (flags < 0) { |
---
drivers/power/bq27xxx_battery.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/power/bq27xxx_battery.c b/drivers/power/bq27xxx_battery.c
index 473aa2f..994c78d 100644
--- a/drivers/power/bq27xxx_battery.c
+++ b/drivers/power/bq27xxx_battery.c
@@ -691,7 +691,7 @@ static bool bq27xxx_battery_dead(struct bq27xxx_device_info *di, u16 flags)
*/
static int bq27xxx_battery_read_health(struct bq27xxx_device_info *di)
{
- u16 flags;
+ int flags;
flags = bq27xxx_read(di, BQ27XXX_REG_FLAGS, false);
if (flags < 0) {