[CPUFREQ] ondemand governor use new cpufreq rwsem locking in work callback
authorVenkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Tue, 6 Feb 2007 00:12:45 +0000 (16:12 -0800)
committerDave Jones <davej@redhat.com>
Sun, 11 Feb 2007 01:01:48 +0000 (20:01 -0500)
commit56463b78cdca8e9ff8cc1759bca0c0777a061d6b
tree435e98e919e96da931b1874eae6c888b734dea6d
parent529af7a14f04f92213bac371931a2b2b060c63fa
[CPUFREQ] ondemand governor use new cpufreq rwsem locking in work callback

Eliminate flush_workqueue in cpufreq_governor(STOP) callpath. Using flush
there has a deadlock potential as in

http://uwsg.iu.edu/hypermail/linux/kernel/0611.3/1223.html

Also, cleanup the locking issues with do_dbs_timer delayed_work callback.  As
it changes the CPU frequency using __cpufreq_target, it needs to have
policy_rwsem in write mode, which also protects it from hot plug.

Signed-off-by: Venkatesh Pallipadi <venkatesh.pallipadi@intel.com>
Cc: Gautham R Shenoy <ego@in.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dave Jones <davej@redhat.com>
drivers/cpufreq/cpufreq_ondemand.c