summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2026-03-26 22:06:40 +0300
committerLinus Torvalds <torvalds@linux-foundation.org>2026-03-26 22:06:40 +0300
commit2d74bd3c58abc557d6ebb61e366fab4c5c501b80 (patch)
tree4b445cc0913a3e17d0ec0135da2ff7c53171a110
parent25b69ebe28c8e3f883b071e924b87d358db56047 (diff)
parentf6484cadbcaf26b5844b51bd7307a663dda48ef6 (diff)
downloadlinux-2d74bd3c58abc557d6ebb61e366fab4c5c501b80.tar.xz
Merge tag 'acpi-7.0-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm
Pull ACPI support fix from Rafael Wysocki: "Prevent use-after-free from occurring on reduced-hardware ACPI platforms when -EPROBE_DEFER is returned by ec_install_handlers() during ACPI EC driver initialization (Weiming Shi)" * tag 'acpi-7.0-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: ACPI: EC: clean up handlers on probe failure in acpi_ec_setup()
-rw-r--r--drivers/acpi/ec.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/acpi/ec.c b/drivers/acpi/ec.c
index 5f63ed120a2c..6f0065257a77 100644
--- a/drivers/acpi/ec.c
+++ b/drivers/acpi/ec.c
@@ -1656,6 +1656,8 @@ static int acpi_ec_setup(struct acpi_ec *ec, struct acpi_device *device, bool ca
ret = ec_install_handlers(ec, device, call_reg);
if (ret) {
+ ec_remove_handlers(ec);
+
if (ec == first_ec)
first_ec = NULL;