diff mbox series

iio: fix warnings about passing signed values to %u

Message ID 20201128155648.376646-1-jic23@kernel.org (mailing list archive)
State New, archived
Headers show
Series iio: fix warnings about passing signed values to %u | expand

Commit Message

Jonathan Cameron Nov. 28, 2020, 3:56 p.m. UTC
From: Jonathan Cameron <Jonathan.Cameron@huawei.com>

In reality, we already know both of these values are positive
but it is still better to make that explicit at the point of use
with abs().

Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reported-by: kernel test robot <lkp@intel.com>
---
 drivers/iio/industrialio-core.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Jonathan Cameron Feb. 21, 2021, 4:26 p.m. UTC | #1
On Sat, 28 Nov 2020 15:56:48 +0000
Jonathan Cameron <jic23@kernel.org> wrote:

> From: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> 
> In reality, we already know both of these values are positive
> but it is still better to make that explicit at the point of use
> with abs().
> 
> Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
> Reported-by: kernel test robot <lkp@intel.com>

Maintainers curse. If someone could sanity check this that would be great.
I never trust myself not to do anything stupid :)

Jonathan

> ---
>  drivers/iio/industrialio-core.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c
> index c2e4c267c36b..00644666f7fe 100644
> --- a/drivers/iio/industrialio-core.c
> +++ b/drivers/iio/industrialio-core.c
> @@ -608,14 +608,14 @@ static ssize_t __iio_format_value(char *buf, size_t len, unsigned int type,
>  			return scnprintf(buf, len, "-%d.%06u%s", abs(vals[0]),
>  					-vals[1], scale_db ? " dB" : "");
>  		else
> -			return scnprintf(buf, len, "%d.%06u%s", vals[0], vals[1],
> +			return scnprintf(buf, len, "%d.%06u%s", vals[0], abs(vals[1]),
>  					scale_db ? " dB" : "");
>  	case IIO_VAL_INT_PLUS_NANO:
>  		if (vals[1] < 0)
>  			return scnprintf(buf, len, "-%d.%09u", abs(vals[0]),
>  					-vals[1]);
>  		else
> -			return scnprintf(buf, len, "%d.%09u", vals[0], vals[1]);
> +			return scnprintf(buf, len, "%d.%09u", vals[0], abs(vals[1]));
>  	case IIO_VAL_FRACTIONAL:
>  		tmp2 = div_s64((s64)vals[0] * 1000000000LL, vals[1]);
>  		tmp1 = vals[1];
diff mbox series

Patch

diff --git a/drivers/iio/industrialio-core.c b/drivers/iio/industrialio-core.c
index c2e4c267c36b..00644666f7fe 100644
--- a/drivers/iio/industrialio-core.c
+++ b/drivers/iio/industrialio-core.c
@@ -608,14 +608,14 @@  static ssize_t __iio_format_value(char *buf, size_t len, unsigned int type,
 			return scnprintf(buf, len, "-%d.%06u%s", abs(vals[0]),
 					-vals[1], scale_db ? " dB" : "");
 		else
-			return scnprintf(buf, len, "%d.%06u%s", vals[0], vals[1],
+			return scnprintf(buf, len, "%d.%06u%s", vals[0], abs(vals[1]),
 					scale_db ? " dB" : "");
 	case IIO_VAL_INT_PLUS_NANO:
 		if (vals[1] < 0)
 			return scnprintf(buf, len, "-%d.%09u", abs(vals[0]),
 					-vals[1]);
 		else
-			return scnprintf(buf, len, "%d.%09u", vals[0], vals[1]);
+			return scnprintf(buf, len, "%d.%09u", vals[0], abs(vals[1]));
 	case IIO_VAL_FRACTIONAL:
 		tmp2 = div_s64((s64)vals[0] * 1000000000LL, vals[1]);
 		tmp1 = vals[1];