diff mbox

ACPI: processor thermal cooling device regression

Message ID 1450326743-9460-1-git-send-email-srinivas.pandruvada@linux.intel.com (mailing list archive)
State Accepted, archived
Delegated to: Rafael Wysocki
Headers show

Commit Message

srinivas pandruvada Dec. 17, 2015, 4:32 a.m. UTC
The processor cooling device is no longer present for passive thermal
control. The change
commit 239708a3af44 ("ACPI: Split out ACPI PSS from ACPI Processor driver")
moved the processing to a new function acpi_pss_perf_init, but
missing "return 0" after successful creation. This causes the error
handling functions to be called, which will delete the previously
created processor cooling device.

Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>
---
 drivers/acpi/processor_driver.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Rafael J. Wysocki Dec. 21, 2015, 3:14 a.m. UTC | #1
On Wednesday, December 16, 2015 08:32:23 PM Srinivas Pandruvada wrote:
> The processor cooling device is no longer present for passive thermal
> control. The change
> commit 239708a3af44 ("ACPI: Split out ACPI PSS from ACPI Processor driver")
> moved the processing to a new function acpi_pss_perf_init, but
> missing "return 0" after successful creation. This causes the error
> handling functions to be called, which will delete the previously
> created processor cooling device.
> 
> Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com>

I'm adding this to my queue for 4.4-rc6, thanks!

BTW, if the commit that introduced the problem is known, please add a Fixes:
tag pointing to it to the patch changelog (I did that for this one).

> ---
>  drivers/acpi/processor_driver.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/acpi/processor_driver.c b/drivers/acpi/processor_driver.c
> index f4e02ae..11154a3 100644
> --- a/drivers/acpi/processor_driver.c
> +++ b/drivers/acpi/processor_driver.c
> @@ -200,7 +200,8 @@ static int acpi_pss_perf_init(struct acpi_processor *pr,
>  		goto err_remove_sysfs_thermal;
>  	}
>  
> -	sysfs_remove_link(&pr->cdev->device.kobj, "device");
> +	return 0;
> +
>   err_remove_sysfs_thermal:
>  	sysfs_remove_link(&device->dev.kobj, "thermal_cooling");
>   err_thermal_unregister:
>
diff mbox

Patch

diff --git a/drivers/acpi/processor_driver.c b/drivers/acpi/processor_driver.c
index f4e02ae..11154a3 100644
--- a/drivers/acpi/processor_driver.c
+++ b/drivers/acpi/processor_driver.c
@@ -200,7 +200,8 @@  static int acpi_pss_perf_init(struct acpi_processor *pr,
 		goto err_remove_sysfs_thermal;
 	}
 
-	sysfs_remove_link(&pr->cdev->device.kobj, "device");
+	return 0;
+
  err_remove_sysfs_thermal:
 	sysfs_remove_link(&device->dev.kobj, "thermal_cooling");
  err_thermal_unregister: