"val" is used as a divisor later, so we should check for zero here to avoid a division by zero. Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> Acked-by: Lars-Peter Clausen <lars@metafoo.de> Signed-off-by: Jonathan Cameron <jic23@kernel.org>
@@ -647,6 +647,8 @@ static ssize_t ad7192_write_frequency(struct device *dev,
ret = strict_strtoul(buf, 10, &lval);
if (ret)
return ret;
+ if (lval == 0)
+ return -EINVAL;
mutex_lock(&indio_dev->mlock);
if (iio_buffer_enabled(indio_dev)) {
@@ -195,6 +195,8 @@ static ssize_t adis16260_write_frequency(struct device *dev,
ret = strict_strtol(buf, 10, &val);
+ if (val == 0)
if (spi_get_device_id(st->us)) {
@@ -234,6 +234,8 @@ static ssize_t adis16400_write_frequency(struct device *dev,
@@ -425,6 +425,8 @@ static ssize_t ade7753_write_frequency(struct device *dev,
@@ -445,6 +445,8 @@ static ssize_t ade7754_write_frequency(struct device *dev,
@@ -385,6 +385,8 @@ static ssize_t ade7759_write_frequency(struct device *dev,