lkml.org 
[lkml]   [2013]   [Sep]   [9]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] OOM killer: wait for tasks with pending SIGKILL to exit
On Mon, 9 Sep 2013, Oleg Nesterov wrote:

> > @@ -275,13 +275,16 @@ enum oom_scan_t oom_scan_process_thread(struct task_struct *task,
> > if (oom_task_origin(task))
> > return OOM_SCAN_SELECT;
> >
> > - if (task->flags & PF_EXITING && !force_kill) {
> > + if ((task->flags & PF_EXITING || fatal_signal_pending(task)) &&
> > + !force_kill) {
> > /*
> > * If this task is not being ptraced on exit, then wait for it
> > * to finish before killing some other task unnecessarily.
> > */
> > - if (!(task->group_leader->ptrace & PT_TRACE_EXIT))
> > + if (!(task->group_leader->ptrace & PT_TRACE_EXIT)) {
>
> can't we finally kill (or fix?) this PT_TRACE_EXIT check?
>

Patches are always welcome.

> It was added to fix the exploit I sent. But the patch was wrong,
> that exploit could be easily modified to trigger the same problem.
>

If the patch prevented your exploit when coredumping was done differently
then it was not wrong. It may not have been as inclusive as you would
have liked, but then again you never proposed any kernel changes to fix it
yourself either.

> However, now that the coredumping is killable that exploit won't
> work, so the original reason has gone away.
>
> So why do we need this check today?
>

If you feel it can be removed, please propose a patch to do so with a
changelog that describes why it is no longer necessary.


\
 
 \ /
  Last update: 2013-09-10 03:41    [W:0.093 / U:0.420 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site