ACPI: processor: Fix memory leaks in error paths of processor_add()
authorJonathan Cameron <Jonathan.Cameron@huawei.com>
Wed, 29 May 2024 13:34:32 +0000 (14:34 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Fri, 28 Jun 2024 17:38:27 +0000 (18:38 +0100)
commit47ec9b417ed9b6b8ec2a941cd84d9de62adc358a
tree69a0e48d2ddda0f16f8d1e0e572b1c488c081156
parentfadf231f0a06a6748a7fc4a2c29ac9ef7bca6bfd
ACPI: processor: Fix memory leaks in error paths of processor_add()

If acpi_processor_get_info() returned an error, pr and the associated
pr->throttling.shared_cpu_map were leaked.

The unwind code was in the wrong order wrt to setup, relying on
some unwind actions having no affect (clearing variables that were
never set etc).  That makes it harder to reason about so reorder
and add appropriate labels to only undo what was actually set up
in the first place.

Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Reviewed-by: Gavin Shan <gshan@redhat.com>
Signed-off-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Link: https://lore.kernel.org/r/20240529133446.28446-6-Jonathan.Cameron@huawei.com
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
drivers/acpi/acpi_processor.c