This repository has been archived on 2026-03-14. You can view files and clone it, but cannot push or open issues or pull requests.
Files
ubports_kernel_google_msm/include/linux
Ashok Raj a9d9baa1e8 [PATCH] clean up lock_cpu_hotplug() in cpufreq
There are some callers in cpufreq hotplug notify path that the lowest
function calls lock_cpu_hotplug().  The lock is already held during
cpu_up() and cpu_down() calls when the notify calls are broadcast to
registered clients.

Ideally if possible, we could disable_preempt() at the highest caller and
make sure we dont sleep in the path down in cpufreq->driver_target() calls
but the calls are so intertwined and cumbersome to cleanup.

Hence we consistently use lock_cpu_hotplug() and unlock_cpu_hotplug() in
all places.

 - Removed export of cpucontrol semaphore and made it static.
 - removed explicit uses of up/down with lock_cpu_hotplug()
   so we can keep track of the the callers in same thread context and
   just keep refcounts without calling a down() that causes a deadlock.
 - Removed current_in_hotplug() uses
 - Removed PF_HOTPLUG_CPU in sched.h introduced for the current_in_hotplug()
   temporary workaround.

Tested with insmod of cpufreq_stat.ko, and logical online/offline
to make sure we dont have any hang situations.

Signed-off-by: Ashok Raj <ashok.raj@intel.com>
Cc: Zwane Mwaikambo <zwane@linuxpower.ca>
Cc: Shaohua Li <shaohua.li@intel.com>
Cc: "Siddha, Suresh B" <suresh.b.siddha@intel.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2005-11-28 14:42:23 -08:00
..
2005-11-13 18:14:17 -08:00
2005-08-25 12:40:44 -04:00
2005-10-22 14:27:05 -04:00
2005-10-28 08:16:49 -07:00
2005-09-07 16:57:21 -07:00
2005-10-04 13:22:01 -07:00
2005-06-23 09:45:26 -07:00
2005-10-28 08:16:47 -07:00
2005-09-10 10:06:21 -07:00
2005-07-10 15:45:11 -07:00
2005-09-10 10:16:27 -07:00
2005-11-07 07:53:35 -08:00
2005-10-30 17:37:32 -08:00
2005-10-30 17:37:10 -08:00
2005-09-05 00:06:09 -07:00
2005-09-07 16:57:21 -07:00
2005-11-05 21:00:02 -05:00
2005-07-13 11:25:24 -07:00
2005-07-12 12:08:43 -07:00
2005-11-13 18:14:10 -08:00
2005-11-09 07:55:59 -08:00
2005-10-30 17:37:32 -08:00
2005-11-10 02:26:41 +01:00
2005-11-22 19:39:30 -08:00
2005-07-12 12:08:43 -07:00
2005-09-05 09:14:13 -07:00
2005-10-30 17:37:32 -08:00
2005-10-30 17:37:32 -08:00
2005-11-08 17:14:08 +01:00
2005-08-29 16:01:32 -07:00
2005-11-08 09:40:47 -08:00
2005-07-05 15:03:46 -07:00
2005-08-29 16:01:32 -07:00
2005-09-19 15:41:28 -07:00
2005-08-29 16:01:32 -07:00
2005-08-29 15:49:46 -07:00
2005-06-21 18:46:32 -07:00
2005-08-29 15:43:19 -07:00
2005-10-03 14:13:38 -07:00
2005-11-07 07:53:41 -08:00
2005-11-07 14:18:56 +01:00
2005-09-17 11:50:02 -07:00
2005-06-25 16:24:55 -07:00
2005-10-08 15:00:57 -07:00
2005-10-30 17:37:32 -08:00
2005-10-28 08:16:47 -07:00
2005-10-30 17:37:17 -08:00
2005-11-14 14:14:16 -05:00
2005-10-28 08:16:47 -07:00
2005-09-14 08:46:21 -04:00
2005-11-28 14:34:23 -08:00
2005-11-07 18:18:11 -08:00
2005-11-09 07:56:00 -08:00
2005-06-24 00:06:28 -07:00
2005-06-23 09:45:04 -07:00
2005-11-13 18:14:12 -08:00
2005-11-21 06:56:52 -08:00
2005-11-13 18:14:15 -08:00
2005-09-07 16:57:24 -07:00
2005-09-13 08:22:31 -07:00
2005-06-27 15:11:43 -07:00
2005-11-07 07:54:09 -08:00
2005-11-07 07:53:42 -08:00
2005-11-07 07:53:39 -08:00
2005-11-06 12:32:31 -06:00
2005-09-09 13:57:54 -07:00
2005-10-28 08:16:47 -07:00
2005-09-07 16:57:18 -07:00
2005-11-07 07:53:46 -08:00
2005-10-29 21:40:41 -07:00
2005-10-30 11:14:39 +11:00
2005-06-27 15:11:44 -07:00
2005-11-07 07:53:41 -08:00
2005-10-30 17:37:32 -08:00
2005-11-07 07:53:37 -08:00
2005-10-30 17:37:19 -08:00
2005-11-20 21:25:15 -08:00
2005-08-29 16:01:32 -07:00
2005-09-10 10:06:21 -07:00
2005-10-28 08:16:47 -07:00
2005-09-05 00:05:45 -07:00
2005-10-30 17:37:20 -08:00
2005-11-10 17:14:59 -08:00
2005-10-30 17:37:32 -08:00
2005-09-18 00:18:32 -07:00
2005-10-30 17:37:18 -08:00
2005-09-09 13:57:58 -07:00
2005-10-28 08:16:46 -07:00
2005-07-12 11:52:57 -07:00
2005-10-28 08:16:49 -07:00
2005-11-23 23:04:28 -08:00
2005-10-29 21:40:35 -07:00
2005-11-07 07:53:41 -08:00
2005-07-12 12:08:43 -07:00