On Wed, 26 Jul 2006, Srivatsa Vaddagiri wrote: > > __create_workqueue(), destroy_workqueue() and flush_workqueue() are all > taking CPU hotplug lock currently. AFAICS they all can block and so > disabling preemption wont work. What am I missing? Well, at least __create_workqueue() should hopefully be fixable in the sense that you can do the blocking ops first, and then do the final part of actually instantiating it with preemption disabled. But I agree with Arjan - I think the fundamental problem is that cpu hotplug locking is just is fundamentally badly designed as-is. There's really very little point to making it a _lock_ per se, since most people really want more of a "I'm using this CPU, don't try to remove it right now" thing which is more of a ref-counting-like issue. I think we're hopefully ok for now in the AB-BA deadlock department (and I should probably remove the recursion warning), and will need to revisit things again after 2.6.18 to try to see if we can fix it properly. Do we have lockdep warnings remaining? I'd hope that Arjan's earlier patch (the one I already applied) got all of those, and that we at least thus would have some basis for the belief that we got the ABBA deadlocks fixed. Linus - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
- Follow-Ups:
- Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- From: Ingo Molnar <[email protected]>
- Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- From: Arjan van de Ven <[email protected]>
- Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- References:
- Re: remove cpu hotplug bustification in cpufreq.
- From: Chuck Ebbert <[email protected]>
- Re: remove cpu hotplug bustification in cpufreq.
- From: Linus Torvalds <[email protected]>
- Re: remove cpu hotplug bustification in cpufreq.
- From: Ingo Molnar <[email protected]>
- Re: remove cpu hotplug bustification in cpufreq.
- From: Arjan van de Ven <[email protected]>
- Re: remove cpu hotplug bustification in cpufreq.
- From: Linus Torvalds <[email protected]>
- [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- From: Arjan van de Ven <[email protected]>
- Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- From: Dave Jones <[email protected]>
- Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- From: Linus Torvalds <[email protected]>
- Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- From: Arjan van de Ven <[email protected]>
- Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- From: Linus Torvalds <[email protected]>
- Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- From: Srivatsa Vaddagiri <[email protected]>
- Re: remove cpu hotplug bustification in cpufreq.
- Prev by Date: Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- Next by Date: Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- Previous by thread: Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- Next by thread: Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare
- Index(es):