diff options
author | Qiushi Wu <wu000273@umn.edu> | 2020-05-28 00:35:51 +0200 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2020-05-28 13:47:53 +0200 |
commit | 4d8be4bc94f74bb7d096e1c2e44457b530d5a170 (patch) | |
tree | 343ffb7692790f6368951d824e83df7facc6ec78 /drivers/acpi/cppc_acpi.c | |
parent | ACPI: CPPC: Make some symbols static (diff) | |
download | linux-4d8be4bc94f74bb7d096e1c2e44457b530d5a170.tar.xz linux-4d8be4bc94f74bb7d096e1c2e44457b530d5a170.zip |
ACPI: CPPC: Fix reference count leak in acpi_cppc_processor_probe()
kobject_init_and_add() takes reference even when it fails.
If this function returns an error, kobject_put() must be called to
properly clean up the memory associated with the object. Previous
commit "b8eb718348b8" fixed a similar problem.
Fixes: 158c998ea44b ("ACPI / CPPC: add sysfs support to compute delivered performance")
Signed-off-by: Qiushi Wu <wu000273@umn.edu>
Cc: 4.10+ <stable@vger.kernel.org> # 4.10+
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/acpi/cppc_acpi.c')
-rw-r--r-- | drivers/acpi/cppc_acpi.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/acpi/cppc_acpi.c b/drivers/acpi/cppc_acpi.c index f8184004294a..7a99b19bb893 100644 --- a/drivers/acpi/cppc_acpi.c +++ b/drivers/acpi/cppc_acpi.c @@ -846,6 +846,7 @@ int acpi_cppc_processor_probe(struct acpi_processor *pr) "acpi_cppc"); if (ret) { per_cpu(cpc_desc_ptr, pr->id) = NULL; + kobject_put(&cpc_ptr->kobj); goto out_free; } |