lkml.org 
[lkml]   [2006]   [Dec]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
DateSat, 9 Dec 2006 11:47:23 -0800
FromAndrew Morton <>
SubjectRe: workqueue deadlock
On Sat, 9 Dec 2006 11:26:52 +0100
Ingo Molnar <mingo@elte.hu> wrote:

>
> * Andrew Morton <akpm@osdl.org> wrote:
>
> > > > + if (cpu != -1)
> > > > + mutex_lock(&workqueue_mutex);
> > >
> > > events/4 thread itself wanting the same mutex above?
> >
> > Could do, not sure. I'm planning on converting all the locking around
> > here to preempt_disable() though.
>
> please at least use an owner-recursive per-CPU lock,

a wot?

> not a naked
> preempt_disable()! The concurrency rules for data structures changed via
> preempt_disable() are quite hard to sort out after the fact.
> (preempt_disable() is too opaque,

preempt_disable() is the preferred way of holding off cpu hotplug.

> it doesnt attach data structure to
> critical section, like normal locks do.)

the data structure is the CPU, and its per-cpu data. And cpu_online_map.
-
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-12-09 20:51    [from the cache]
©2003-2010