Messages in this thread | | | Subject | Re: [patch] Reorganize the cpufreq cpu hotplug locking to not be totally bizare | From | Arjan van de Ven <> | Date | Wed, 26 Jul 2006 23:03:06 +0200 |
| |
On Wed, 2006-07-26 at 13:42 -0700, Srivatsa Vaddagiri wrote: > On Wed, Jul 26, 2006 at 09:42:34PM +0200, Arjan van de Ven wrote: > > As a quick hack I made non-lock_cpu_hotplug()'ing versions of the 3 key > > workqueue functions (patch below). It works, it's correct, it's just so > > ugly that I'm almost too ashamed to post it. I haven't found a better > > solution yet though... time to take a step back I suppose. > > My worry is that such special cases might be needed in more places as we > discover further or as code evolves. Fundamentally looks like the locked and > unlocked paths of the kernel cannot be separated so well because of interaction > between subsystems. /me thinks rwsem seems to be a sane thing to go after.
rwsems unfortunately help you zilch; an rwsem is just a mutex with a performance tweak, but from the deadlock perspective it's really a mutex.
I'm really starting to feel that the hotplug lock would have been better of being a refcount (with a waitqueue for zero) than a lock. While "refcount+waitqueue" sort of IS a lock, the semantics make more sense imo...
Greetings, Arjan van de Ven - 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/
| |