Re: [PATCH] AB-BA deadlock between uidhash_lock and tasklist_lock.

2005-03-10 Thread Linus Torvalds
On Thu, 10 Mar 2005, Robin Holt wrote: > > reparent_to_init() does write_lock_irq(_lock) then calls > switch_uid() which calls free_uid() which grabs the uidhash_lock. > > Independent of that, we have seen a different cpu call free_uid as a > result of sys_wait4 and, immediately after

[PATCH] AB-BA deadlock between uidhash_lock and tasklist_lock.

2005-03-10 Thread Robin Holt
We have uncovered a very difficult to trip AB-BA deadlock between the uidhash_lock and tasklist_lock. reparent_to_init() does write_lock_irq(_lock) then calls switch_uid() which calls free_uid() which grabs the uidhash_lock. Independent of that, we have seen a different cpu call free_uid as a

[PATCH] AB-BA deadlock between uidhash_lock and tasklist_lock.

2005-03-10 Thread Robin Holt
We have uncovered a very difficult to trip AB-BA deadlock between the uidhash_lock and tasklist_lock. reparent_to_init() does write_lock_irq(tasklist_lock) then calls switch_uid() which calls free_uid() which grabs the uidhash_lock. Independent of that, we have seen a different cpu call free_uid

Re: [PATCH] AB-BA deadlock between uidhash_lock and tasklist_lock.

2005-03-10 Thread Linus Torvalds
On Thu, 10 Mar 2005, Robin Holt wrote: reparent_to_init() does write_lock_irq(tasklist_lock) then calls switch_uid() which calls free_uid() which grabs the uidhash_lock. Independent of that, we have seen a different cpu call free_uid as a result of sys_wait4 and, immediately after