2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2025-01-11 07:04:04 +08:00
linux-next/drivers/iio/light
Jonathan Cameron 523628852a iio:light:max44000 Fix timestamp alignment and prevent data leak.
One of a class of bugs pointed out by Lars in a recent review.
iio_push_to_buffers_with_timestamp assumes the buffer used is aligned
to the size of the timestamp (8 bytes).  This is not guaranteed in
this driver which uses a 16 byte array of smaller elements on the stack.
As Lars also noted this anti pattern can involve a leak of data to
userspace and that indeed can happen here.  We close both issues by
moving to a suitable structure in the iio_priv().
This data is allocated with kzalloc so no data can leak appart
from previous readings.

It is necessary to force the alignment of ts to avoid the padding
on x86_32 being different from 64 bit platorms (it alows for
4 bytes aligned 8 byte types.

Fixes: 06ad7ea10e ("max44000: Initial triggered buffer support")
Reported-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Cc: <Stable@vger.kernel.org>
2020-08-22 11:38:57 +01:00
..
acpi-als.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
adjd_s311.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
adux1020.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
al3010.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
al3320a.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
apds9300.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
apds9960.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
bh1750.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
bh1780.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
cm3232.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
cm3323.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
cm3605.c iio: remove left-over parent assignments 2020-06-14 11:50:04 +01:00
cm32181.c iio: light: cm32181: Fix formatting and docrot issues in cm32181_acpi_get_cpm() 2020-07-20 09:03:07 +01:00
cm36651.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
cros_ec_light_prox.c iio: cros_ec: Reapply range at resume 2020-06-14 11:49:41 +01:00
gp2ap002.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
gp2ap020a00f.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
hid-sensor-als.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
hid-sensor-prox.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
iqs621-als.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
isl29018.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
isl29028.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
isl29125.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
jsa1212.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
Kconfig iio: vcnl4000: Add buffer support for VCNL4010/20. 2020-05-03 14:53:57 +01:00
lm3533-als.c iio: light: lm3533-als: use iio_device_set_parent() to assign parent 2020-06-14 11:50:02 +01:00
ltr501.c iio: remove left-over parent assignments 2020-06-14 11:50:04 +01:00
lv0104cs.c Replace HTTP links with HTTPS ones: drivers/iio 2020-07-13 15:05:59 +01:00
Makefile - New Drivers 2020-04-07 19:48:52 -07:00
max44000.c iio:light:max44000 Fix timestamp alignment and prevent data leak. 2020-08-22 11:38:57 +01:00
max44009.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
noa1305.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
opt3001.c Replace HTTP links with HTTPS ones: drivers/iio 2020-07-13 15:05:59 +01:00
pa12203001.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
rpr0521.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
si1133.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
si1145.c iio: light: si1145: Demote obvious misuse of kerneldoc to standard comment blocks 2020-07-20 09:03:17 +01:00
st_uvis25_core.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
st_uvis25_i2c.c iio: light: st_uvis25: Add mod_devicetable.h and drop of_match_ptr 2020-04-25 15:44:36 +01:00
st_uvis25_spi.c iio: light: st_uvis25: Add mod_devicetable.h and drop of_match_ptr 2020-04-25 15:44:36 +01:00
st_uvis25.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 177 2019-05-30 11:29:19 -07:00
stk3310.c iio: light: stk3310: add chip id for STK3311-X variant 2020-07-20 09:03:38 +01:00
tcs3414.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
tcs3472.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
tsl2563.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
tsl2583.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
tsl2772.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
tsl4531.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
us5182d.c iio: light: us5182d: Fix formatting in kerneldoc function block 2020-07-20 09:03:19 +01:00
vcnl4000.c iio: Move attach/detach of the poll func to the core 2020-06-20 17:34:44 +01:00
vcnl4035.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
veml6030.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
veml6070.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
vl6180.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00
zopt2201.c iio: remove explicit IIO device parent assignment 2020-06-14 11:49:59 +01:00