Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare

From: Ashok Raj
Date: Wed Jul 26 2006 - 17:39:15 EST


On Wed, Jul 26, 2006 at 01:22:24PM -0700, Linus Torvalds wrote:
>
> Of course, that's why people want recursive locks in the first place, and
> it's also why we've (largely successfully) have avoided them - it allows
> for people being way too lazy about locking, and allows for really broken
> schenarios like this.
>
> I wonder if we could just make the workqueue code just run with preemption
> disabled - that should also automatically protect against any CPU hotplug

Its probably ok for this case.

before introducing the ugly recursion we did try the preempt_disable()
for cpufreq, and it worked for most all governers with preempt_disable(),
but powernowk8 called set_cpus_allowed() in the callback path that
threw out a scheduling while in atomic BUG().

http://lkml.org/lkml/2005/10/31/239


> events on the local CPU (and I think "local CPU" is all that the wq code
> cares about, no?)
>
> Linus

--
Cheers,
Ashok Raj
- Open Source Technology Center
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/