diff mbox

Thermal: Fix bug on cpu_cooling, cooling device's id conflict problem.

Message ID 1348620211-1409-1-git-send-email-jonghwa3.lee@samsung.com (mailing list archive)
State Not Applicable, archived
Headers show

Commit Message

Jonghwa Lee Sept. 26, 2012, 12:43 a.m. UTC
This patch fixes small bug on cpu_cooling. CPU cooling device has own
id generated with idr mathod. However in the previous version, it swapped
to all same id at last stage of probing as 0. This makes id's collision and
also occures error when it releases that id.

Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
---
 drivers/thermal/cpu_cooling.c |    3 +--
 1 files changed, 1 insertions(+), 2 deletions(-)

Comments

Amit Kachhap Sept. 27, 2012, 5:24 a.m. UTC | #1
On 26 September 2012 06:13, Jonghwa Lee <jonghwa3.lee@samsung.com> wrote:
> This patch fixes small bug on cpu_cooling. CPU cooling device has own
> id generated with idr mathod. However in the previous version, it swapped
> to all same id at last stage of probing as 0. This makes id's collision and
> also occures error when it releases that id.
>
> Signed-off-by: Jonghwa Lee <jonghwa3.lee@samsung.com>
> ---
>  drivers/thermal/cpu_cooling.c |    3 +--
>  1 files changed, 1 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/thermal/cpu_cooling.c b/drivers/thermal/cpu_cooling.c
> index 99a5d75..9050c1b 100644
> --- a/drivers/thermal/cpu_cooling.c
> +++ b/drivers/thermal/cpu_cooling.c
> @@ -351,7 +351,7 @@ struct thermal_cooling_device *cpufreq_cooling_register(
>         struct cpufreq_cooling_device *cpufreq_dev = NULL;
>         unsigned int cpufreq_dev_count = 0, min = 0, max = 0;
>         char dev_name[THERMAL_NAME_LENGTH];
> -       int ret = 0, id = 0, i;
> +       int ret = 0, i;
>         struct cpufreq_policy policy;
>
>         list_for_each_entry(cpufreq_dev, &cooling_cpufreq_list, node)
> @@ -396,7 +396,6 @@ struct thermal_cooling_device *cpufreq_cooling_register(
>                 kfree(cpufreq_dev);
>                 return ERR_PTR(-EINVAL);
>         }
> -       cpufreq_dev->id = id;

This change looks fine. May be some last minute typo caused this bug.

Thanks,
Amit Daniel
>         cpufreq_dev->cool_dev = cool_dev;
>         cpufreq_dev->cpufreq_state = 0;
>         mutex_lock(&cooling_cpufreq_lock);
> --
> 1.7.4.1
>
--
To unsubscribe from this list: send the line "unsubscribe linux-pm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/thermal/cpu_cooling.c b/drivers/thermal/cpu_cooling.c
index 99a5d75..9050c1b 100644
--- a/drivers/thermal/cpu_cooling.c
+++ b/drivers/thermal/cpu_cooling.c
@@ -351,7 +351,7 @@  struct thermal_cooling_device *cpufreq_cooling_register(
 	struct cpufreq_cooling_device *cpufreq_dev = NULL;
 	unsigned int cpufreq_dev_count = 0, min = 0, max = 0;
 	char dev_name[THERMAL_NAME_LENGTH];
-	int ret = 0, id = 0, i;
+	int ret = 0, i;
 	struct cpufreq_policy policy;
 
 	list_for_each_entry(cpufreq_dev, &cooling_cpufreq_list, node)
@@ -396,7 +396,6 @@  struct thermal_cooling_device *cpufreq_cooling_register(
 		kfree(cpufreq_dev);
 		return ERR_PTR(-EINVAL);
 	}
-	cpufreq_dev->id = id;
 	cpufreq_dev->cool_dev = cool_dev;
 	cpufreq_dev->cpufreq_state = 0;
 	mutex_lock(&cooling_cpufreq_lock);