linux-stable/drivers/iio
Matti Vaittinen a10a0f385a iio: bmc150-accel-core: Fix unsafe buffer attributes
The iio_triggered_buffer_setup_ext() was changed by
commit 15097c7a1a ("iio: buffer: wrap all buffer attributes into iio_dev_attr")
to silently expect that all attributes given in buffer_attrs array are
device-attributes. This expectation was not forced by the API - and some
drivers did register attributes created by IIO_CONST_ATTR().

The added attribute "wrapping" does not copy the pointer to stored
string constant and when the sysfs file is read the kernel will access
to invalid location.

Change the IIO_CONST_ATTRs from the driver to IIO_DEVICE_ATTR in order
to prevent the invalid memory access.

Signed-off-by: Matti Vaittinen <mazziesaccount@gmail.com>
Fixes: 15097c7a1a ("iio: buffer: wrap all buffer attributes into iio_dev_attr")
Link: https://lore.kernel.org/r/cf8a56658fc38db8bed64f456d898f5ad5a2814f.1664782676.git.mazziesaccount@gmail.com
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
2022-10-17 08:51:26 +01:00
..
accel iio: bmc150-accel-core: Fix unsafe buffer attributes 2022-10-17 08:51:26 +01:00
adc iio: at91-sama5d2_adc: Fix unsafe buffer attributes 2022-10-17 08:51:26 +01:00
addac iio: stx104: Move to addac subdirectory 2022-08-20 13:09:38 +01:00
afe iio: afe: rescale: export symbols used during testing 2022-07-16 19:01:14 +01:00
amplifiers iio: amplifiers: ad8366: Fix alignment for DMA safety 2022-06-14 11:53:15 +01:00
buffer
cdc iio: cdc: ad7746: Move driver out of staging. 2022-08-15 22:30:01 +01:00
chemical i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
common iio: common: scmi_sensors: use HZ macro from units.h 2022-08-28 16:57:56 +01:00
dac Char/Misc and other driver changes for 6.1-rc1 2022-10-08 08:56:37 -07:00
dummy
filter
frequency iio: frequency: admv1014: return -EINVAL directly 2022-08-19 18:07:22 +01:00
gyro i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
health i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
humidity i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
imu Char/Misc and other driver changes for 6.1-rc1 2022-10-08 08:56:37 -07:00
light iio: light: tsl2583: Fix module unloading 2022-10-17 08:51:26 +01:00
magnetometer Char/Misc and other driver changes for 6.1-rc1 2022-10-08 08:56:37 -07:00
multiplexer
orientation
position
potentiometer iio: potentiometer: mcp4131: Fix alignment for DMA safety 2022-06-14 11:53:19 +01:00
potentiostat i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
pressure Char/Misc and other driver changes for 6.1-rc1 2022-10-08 08:56:37 -07:00
proximity Char/Misc and other driver changes for 6.1-rc1 2022-10-08 08:56:37 -07:00
resolver iio: resolver: ad2s90: Fix alignment for DMA safety 2022-06-14 11:53:19 +01:00
temperature iio: temperature: ltc2983: allocate iio channels once 2022-10-17 08:51:26 +01:00
test iio: test: Mark file local structure arrays static. 2022-08-15 22:30:01 +01:00
trigger IIO new device support, features and minor fixes for 5.20 2022-07-14 15:04:49 +02:00
Kconfig
Makefile
TODO
iio_core.h
iio_core_trigger.h
industrialio-buffer.c iio: Fix indentation for multiline conditional. 2022-08-15 22:29:57 +01:00
industrialio-configfs.c
industrialio-core.c iio: add support for binary attributes 2022-09-21 18:42:55 +01:00
industrialio-event.c iio: Add new event type gesture and use direction for single and double tap 2022-09-05 18:08:42 +01:00
industrialio-sw-device.c iio: Don't use bare "unsigned" 2022-07-01 11:19:08 +01:00
industrialio-sw-trigger.c iio: Don't use bare "unsigned" 2022-07-01 11:19:08 +01:00
industrialio-trigger.c iio: Add blank lines after declarations. 2022-08-15 22:29:56 +01:00
industrialio-triggered-event.c
inkern.c iio: inkern: fix coding style warnings 2022-08-15 22:30:00 +01:00