Skip to contentSkip to conversation

Staging: iio/dac/ad5064.c: signedness bug in

PATCH In review Dan Carpenter 3 participants 3 messages Oct 29, 2011 – Oct 31, 2011

Subsystems (5)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Staging: iio/dac/ad5064.c: signedness bug in

regulator_get_voltage() returns an int so "scale_uv" should be an int. Making it unsigned here breaks the error handling.

drivers/staging/iio/dac/ad5064.c +1 -1
index 24279f2..3b14526 100644
@@ -280,8 +280,8 @@ static int ad5064_read_raw(struct iio_dev *indio_dev,
 			   long m)
 {
 	struct ad5064_state *st = iio_priv(indio_dev);
-	unsigned long scale_uv;
 	unsigned int vref;
+	int scale_uv;
 
 	switch (m) {
 	case 0:
Acked-by on v1 1/1
#1 lore raw

Re: [patch] Staging: iio/dac/ad5064.c: signedness bug in ad5064_read_raw()

Quoted 4 lines · Dan Carpenter

regulator_get_voltage() returns an int so "scale_uv" should be an int. Making it unsigned here breaks the error handling.

uhm, yes...

Thanks.

Quoted 15 lines
drivers/staging/iio/dac/ad5064.c +1 -1
index 24279f2..3b14526 100644
@@ -280,8 +280,8 @@ static int ad5064_read_raw(struct iio_dev *indio_dev,
 			   long m)
 {
 	struct ad5064_state *st = iio_priv(indio_dev);
-	unsigned long scale_uv;
 	unsigned int vref;
+	int scale_uv;
 
 	switch (m) {
 	case 0:
#2 lore raw

Re: [patch] Staging: iio/dac/ad5064.c: signedness bug in ad5064_read_raw()

Quoted 9 lines · Lars-Peter Clausen
Quoted 4 lines · Dan Carpenter

regulator_get_voltage() returns an int so "scale_uv" should be an int. Making it unsigned here breaks the error handling.

uhm, yes...

Quoted 20 lines

Thanks.

Quoted 15 lines
drivers/staging/iio/dac/ad5064.c +1 -1
index 24279f2..3b14526 100644
@@ -280,8 +280,8 @@ static int ad5064_read_raw(struct iio_dev *indio_dev,
 			   long m)
 {
 	struct ad5064_state *st = iio_priv(indio_dev);
-	unsigned long scale_uv;
 	unsigned int vref;
+	int scale_uv;
 
 	switch (m) {
 	case 0: