lkml.org 
[lkml]   [2006]   [Nov]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: CPUFREQ-CPUHOTPLUG: Possible circular locking dependency

* Gautham R Shenoy <ego@in.ibm.com> wrote:

> This is what is currently being done by cpufreq:

ok!

> a) get_some_cpu_hotplug_protection() [use either some global mechanism
> or a persubsystem mutex]

this bit is wrong i think. Any reason why it's not a per-CPU (but
otherwise global) array of mutexes that controls CPU hotplug - as per my
previous mail?

that would flatten the whole locking. Only one kind of lock taken,
recursive and scalable.

Then the mechanism that changes CPU frequency should take all these
hotplug locks on all (online) CPUs, and then first stop all processing
on all CPUs, and then do the frequency change, atomically. This is with
interrupts disabled everywhere /first/, and /without any additional
locking/. That would prevent any sort of interaction from other CPUs -
they'd all be sitting still with interrupts disabled.

Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2006-11-30 12:57    [W:0.067 / U:0.636 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site