linux-stable/drivers/misc/eeprom
Daniel Okazaki 6d8b56ec0c eeprom: at24: fix memory corruption race condition
commit f42c97027f upstream.

If the eeprom is not accessible, an nvmem device will be registered, the
read will fail, and the device will be torn down. If another driver
accesses the nvmem device after the teardown, it will reference
invalid memory.

Move the failure point before registering the nvmem device.

Signed-off-by: Daniel Okazaki <dtokazaki@google.com>
Fixes: b20eb4c1f0 ("eeprom: at24: drop unnecessary label")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20240422174337.2487142-1-dtokazaki@google.com
Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-05-02 16:35:28 +02:00
..
Kconfig eeprom: Remove deprecated legacy eeprom driver 2023-10-05 11:09:40 +02:00
Makefile eeprom: Remove deprecated legacy eeprom driver 2023-10-05 11:09:40 +02:00
at24.c eeprom: at24: fix memory corruption race condition 2024-05-02 16:35:28 +02:00
at25.c eeprom: at25: Convert to use fwnode_device_is_compatible() 2023-01-20 12:05:01 +01:00
digsy_mtc_eeprom.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ee1004.c eeprom: ee1004: add support for temperature sensor 2024-01-04 17:01:14 +01:00
eeprom_93cx6.c misc: eeprom: eeprom_93cx6: Repair function arg descriptions 2020-06-29 18:45:52 +02:00
eeprom_93xx46.c spi: make remove callback a void function 2022-02-09 13:00:45 +00:00
idt_89hpesx.c eeprom: idt_89hpesx: replace open-coded kmemdup_nul 2023-10-05 11:09:37 +02:00
max6875.c misc: Switch i2c drivers back to use .probe() 2023-05-29 15:04:52 +01:00