![]() | |||||||||||
Messages in this thread Complete thread (EXPERIMENTAL) |
Andrew Morton wrote: Oleg Nesterov <oleg@tv-sign.ru> wrote: + /* + * We are locking ->it_lock + tasklist_lock backwards + * from release_task()->exit_itimers(), beware deadlock. + */ + leader = timr->it_process->group_leader; + while (unlikely(!read_trylock(&tasklist_lock))) { + if (leader->flags & PF_EXITING) { + smp_rmb(); + if (thread_group_empty(leader)) + return 0; + } + cpu_relax(); + } Oh dear. Is there no way to fix this up by taking the locks in the correct order? (Whatever that is). Andrew, please drop this patch. It is obsoleted by Roland's "[PATCH] Call exit_itimers from do_exit, not __exit_signal". Oleg. | ||||||||||
![]() | |||||||||||
| Last update: 2005-10-23 16:43 [W:0.501 / U:0.010 seconds] ©2003-2005 Jasper Spaans | |||||||||||