summaryrefslogtreecommitdiff
path: root/drivers/hwmon/pkgtemp.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/hwmon/pkgtemp.c')
-rw-r--r--drivers/hwmon/pkgtemp.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/drivers/hwmon/pkgtemp.c b/drivers/hwmon/pkgtemp.c
index 74157fcda6ed..844957333fe5 100644
--- a/drivers/hwmon/pkgtemp.c
+++ b/drivers/hwmon/pkgtemp.c
@@ -339,17 +339,18 @@ exit:
#ifdef CONFIG_HOTPLUG_CPU
static void pkgtemp_device_remove(unsigned int cpu)
{
- struct pdev_entry *p, *n;
+ struct pdev_entry *p;
unsigned int i;
int err;
mutex_lock(&pdev_list_mutex);
- list_for_each_entry_safe(p, n, &pdev_list, list) {
+ list_for_each_entry(p, &pdev_list, list) {
if (p->cpu != cpu)
continue;
platform_device_unregister(p->pdev);
list_del(&p->list);
+ mutex_unlock(&pdev_list_mutex);
kfree(p);
for_each_cpu(i, cpu_core_mask(cpu)) {
if (i != cpu) {
@@ -358,7 +359,7 @@ static void pkgtemp_device_remove(unsigned int cpu)
break;
}
}
- break;
+ return;
}
mutex_unlock(&pdev_list_mutex);
}