On 05/21, Maninder Singh wrote: > > EP-F6AA0618C49C4AEDA73BFF1B39950BAB > Hi, > > From: Maninder Singh <maninder...@samsung.com> > > Subject: [PATCH 1/1] kernel/exit.c : Fix missing task_unlock > > This patch adds missing read_unlock if do_wait_thread or ptrace_do_wait > returns non zero.
Confused... wait_consider_task() should drop tasklist_lock if it returns non-zero? > --- a/kernel/exit.c > +++ b/kernel/exit.c > @@ -1486,12 +1486,16 @@ repeat: > tsk = current; > do { > retval = do_wait_thread(wo, tsk); > - if (retval) > + if (retval) { > + read_unlock(&tasklist_lock); > goto end; > + } > > retval = ptrace_do_wait(wo, tsk); > - if (retval) > + if (retval) { > + read_unlock(&tasklist_lock); > goto end; > + } Well, the patch is obviously wrong. Because, again, tasklist_lock was already unlocked if (say) wait_task_zombie() reaps a child. If you think there is a case which forgets to unlock, please tell us more. Oleg. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/