Patch "iio: tsl2583: Fix division by a zero lux_val" has been added to the 4.4-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    iio: tsl2583: Fix division by a zero lux_val

to the 4.4-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     iio-tsl2583-fix-division-by-a-zero-lux_val.patch
and it can be found in the queue-4.4 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.


>From af0e1871d79cfbb91f732d2c6fa7558e45c31038 Mon Sep 17 00:00:00 2001
From: Colin Ian King <colin.king@xxxxxxxxxxxxx>
Date: Fri, 7 May 2021 19:30:41 +0100
Subject: iio: tsl2583: Fix division by a zero lux_val

From: Colin Ian King <colin.king@xxxxxxxxxxxxx>

commit af0e1871d79cfbb91f732d2c6fa7558e45c31038 upstream.

The lux_val returned from tsl2583_get_lux can potentially be zero,
so check for this to avoid a division by zero and an overflowed
gain_trim_val.

Fixes clang scan-build warning:

drivers/iio/light/tsl2583.c:345:40: warning: Either the
condition 'lux_val<0' is redundant or there is division
by zero at line 345. [zerodivcond]

Fixes: ac4f6eee8fe8 ("staging: iio: TAOS tsl258x: Device driver")
Signed-off-by: Colin Ian King <colin.king@xxxxxxxxxxxxx>
Cc: <Stable@xxxxxxxxxxxxxxx>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@xxxxxxxxxx>
[iwamatsu: Change file path.]
Signed-off-by: Nobuhiro Iwamatsu <nobuhiro1.iwamatsu@xxxxxxxxxxxxx>
Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
---
 drivers/staging/iio/light/tsl2583.c |    9 +++++++++
 1 file changed, 9 insertions(+)

--- a/drivers/staging/iio/light/tsl2583.c
+++ b/drivers/staging/iio/light/tsl2583.c
@@ -378,6 +378,15 @@ static int taos_als_calibrate(struct iio
 		dev_err(&chip->client->dev, "taos_als_calibrate failed to get lux\n");
 		return lux_val;
 	}
+
+	/* Avoid division by zero of lux_value later on */
+	if (lux_val == 0) {
+		dev_err(&chip->client->dev,
+			"%s: lux_val of 0 will produce out of range trim_value\n",
+			__func__);
+		return -ENODATA;
+	}
+
 	gain_trim_val = (unsigned int) (((chip->taos_settings.als_cal_target)
 			* chip->taos_settings.als_gain_trim) / lux_val);
 


Patches currently in stable-queue which might be from colin.king@xxxxxxxxxxxxx are

queue-4.4/media-m88rs6000t-avoid-potential-out-of-bounds-reads.patch
queue-4.4/staging-rtl8192u-fix-potential-infinite-loop.patch
queue-4.4/net-thunderx-fix-unintentional-sign-extension-issue.patch
queue-4.4/memory-gpmc-fix-out-of-bounds-read-and-dereference-o.patch
queue-4.4/mt7601u-fix-always-true-expression.patch
queue-4.4/clk-socfpga-arria10-fix-memory-leak-of-socfpga_clk-o.patch
queue-4.4/usb-gadget-r8a66597-add-missing-null-check-on-return.patch
queue-4.4/iio-tsl2583-fix-division-by-a-zero-lux_val.patch
queue-4.4/net-davinci_emac-fix-incorrect-masking-of-tx-and-rx-.patch
queue-4.4/drm-radeon-fix-copy-of-uninitialized-variable-back-to-userspace.patch
queue-4.4/media-vivid-fix-assignment-of-dev-fbuf_out_flags.patch



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux