x86, therm_throt.c: Remove unused therm_cpu_lock
After fixing the CPU hotplug callback registration code, the callbacks invoked for each online CPU, during the initialization phase in thermal_throttle_init_device(), can no longer race with the actual CPU hotplug notifier callbacks (in thermal_throttle_cpu_callback). Hence the therm_cpu_lock is unnecessary now. Remove it. Cc: Tony Luck <tony.luck@intel.com> Cc: Borislav Petkov <bp@alien8.de> Cc: Thomas Gleixner <tglx@linutronix.de> Cc: Ingo Molnar <mingo@kernel.org> Cc: "H. Peter Anvin" <hpa@zytor.com> Suggested-by: Oleg Nesterov <oleg@redhat.com> Signed-off-by: Srivatsa S. Bhat <srivatsa.bhat@linux.vnet.ibm.com> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Родитель
4e6192bbec
Коммит
7b7139d4ab
|
@ -271,9 +271,6 @@ static void thermal_throttle_remove_dev(struct device *dev)
|
|||
sysfs_remove_group(&dev->kobj, &thermal_attr_group);
|
||||
}
|
||||
|
||||
/* Mutex protecting device creation against CPU hotplug: */
|
||||
static DEFINE_MUTEX(therm_cpu_lock);
|
||||
|
||||
/* Get notified when a cpu comes on/off. Be hotplug friendly. */
|
||||
static int
|
||||
thermal_throttle_cpu_callback(struct notifier_block *nfb,
|
||||
|
@ -289,18 +286,14 @@ thermal_throttle_cpu_callback(struct notifier_block *nfb,
|
|||
switch (action) {
|
||||
case CPU_UP_PREPARE:
|
||||
case CPU_UP_PREPARE_FROZEN:
|
||||
mutex_lock(&therm_cpu_lock);
|
||||
err = thermal_throttle_add_dev(dev, cpu);
|
||||
mutex_unlock(&therm_cpu_lock);
|
||||
WARN_ON(err);
|
||||
break;
|
||||
case CPU_UP_CANCELED:
|
||||
case CPU_UP_CANCELED_FROZEN:
|
||||
case CPU_DEAD:
|
||||
case CPU_DEAD_FROZEN:
|
||||
mutex_lock(&therm_cpu_lock);
|
||||
thermal_throttle_remove_dev(dev);
|
||||
mutex_unlock(&therm_cpu_lock);
|
||||
break;
|
||||
}
|
||||
return notifier_from_errno(err);
|
||||
|
@ -321,17 +314,11 @@ static __init int thermal_throttle_init_device(void)
|
|||
|
||||
cpu_notifier_register_begin();
|
||||
|
||||
#ifdef CONFIG_HOTPLUG_CPU
|
||||
mutex_lock(&therm_cpu_lock);
|
||||
#endif
|
||||
/* connect live CPUs to sysfs */
|
||||
for_each_online_cpu(cpu) {
|
||||
err = thermal_throttle_add_dev(get_cpu_device(cpu), cpu);
|
||||
WARN_ON(err);
|
||||
}
|
||||
#ifdef CONFIG_HOTPLUG_CPU
|
||||
mutex_unlock(&therm_cpu_lock);
|
||||
#endif
|
||||
|
||||
__register_hotcpu_notifier(&thermal_throttle_cpu_notifier);
|
||||
cpu_notifier_register_done();
|
||||
|
|
Загрузка…
Ссылка в новой задаче