Messages in this thread | | | From | KOSAKI Motohiro <> | Subject | Re: [RFC] oom-kill: give the dying task a higher priority | Date | Wed, 2 Jun 2010 22:54:01 +0900 (JST) |
| |
> > @@ -291,9 +309,10 @@ static struct task_struct *select_bad_process(unsigned long *ppoints, > > * Otherwise we could get an easy OOM deadlock. > > */ > > if (p->flags & PF_EXITING) { > > - if (p != current) > > + if (p != current) { > > + boost_dying_task_prio(p, mem); > > return ERR_PTR(-1UL); > > - > > + } > > chosen = p; > > *ppoints = ULONG_MAX; > > } > > This has the potential to actually make it harder to free memory if p is > waiting to acquire a writelock on mm->mmap_sem in the exit path while the > thread holding mm->mmap_sem is trying to run.
if p is waiting, changing prio have no effect. It continue tol wait to release mmap_sem.
| |