Messages in this thread | | | Date | Thu, 21 May 2015 08:03:48 +0200 | From | Ingo Molnar <> | Subject | Re: [EDT][PATCH] kernel/exit.c : Fix missing read_unlock |
| |
* Maninder Singh <maninder1.s@samsung.com> wrote:
> EP-F6AA0618C49C4AEDA73BFF1B39950BAB > Hi, > > From: Maninder Singh <maninder1.s@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. > > Signed-off-by: Maninder Singh <maninder1.s@samsung.com> > Signed-off-by: Vaneet Narang <v.narang@samsung.com> > Reviewd-by: Akhilesh Kumar <akhilesh.k@samsung.com> > --- > kernel/exit.c | 8 ++++++-- > 1 files changed, 6 insertions(+), 2 deletions(-) > > diff --git a/kernel/exit.c b/kernel/exit.c > index 22fcc05..31a061f 100644 > --- 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; > + } > > if (wo->wo_flags & __WNOTHREAD) > break;
That's surprising and the changelog is lacking.
So the last time that code was touched upstream was 7 years ago:
commit 64a16caf5e3417ee32f670debcb5857b02a9e08e Author: Oleg Nesterov <oleg@redhat.com> Date: Wed Jun 17 16:27:40 2009 -0700
do_wait: simplify retval/tsk_result/notask_error mess
please explain whether what you fix is:
1) an ancient bug that somehow nobody ever triggered (plus analysis of why it wasn't triggered)
2) a new bug introduced by commit XYZ (plus analysis)
3) something else
Thanks,
Ingo
| |