linux/drivers/misc/eeprom
Daniel Okazaki c43e5028f5 eeprom: at24: fix memory corruption race condition
[ Upstream commit f42c97027f ]

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: Sasha Levin <sashal@kernel.org>
History 2024-05-17 11:55:51 +02:00
..
at24.c eeprom: at24: fix memory corruption race condition 2024-05-17 11:55:51 +02:00
at25.c eeprom: at25: Rework buggy read splitting 2022-06-27 16:21:05 +02:00
digsy_mtc_eeprom.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ee1004.c i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00
eeprom.c Char/Misc and other driver changes for 6.1-rc1 2022-10-08 08:56:37 -07: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: Fix error handling in idt_init() 2023-03-10 09:33:32 +01:00
Kconfig eeprom: at24: also select REGMAP 2023-06-14 11:15:32 +02:00
Makefile eeprom: New ee1004 driver for DDR4 memory 2018-10-15 20:51:46 +02:00
max6875.c i2c: Make remove callback return void 2022-08-16 12:46:26 +02:00