Messages in this thread | | | From | KOSAKI Motohiro <> | Subject | Re: FYI: mmap_sem OOM patch | Date | Thu, 8 Jul 2010 18:24:21 +0900 (JST) |
| |
> On Wed, 2010-07-07 at 16:11 -0700, Michel Lespinasse wrote: > > > diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c > > index f627779..4b3a1c7 100644 > > --- a/arch/x86/mm/fault.c > > +++ b/arch/x86/mm/fault.c > > @@ -1062,7 +1062,10 @@ do_page_fault(struct pt_regs *regs, unsigned long error_code) > > bad_area_nosemaphore(regs, error_code, address); > > return; > > } > > - down_read(&mm->mmap_sem); > > + if (test_thread_flag(TIF_MEMDIE)) > > + down_read_unfair(&mm->mmap_sem); > > + else > > + down_read(&mm->mmap_sem); > > } else { > > /* > > * The above down_read_trylock() might have succeeded in > > I still think adding that _unfair interface is asking for trouble.
Can you please explain trouble that you worry? Why do we need to keep thread fairness when OOM case?
btw, I also dislike unfair + /proc combination.
| |