Re: [PATCH] arch, mm: introduce arch_tlb_gather_mmu_lazy (was: Re: [RESEND PATCH] mm, oom_reaper: gather each vma to prevent) leaking TLB entry

From: Minchan Kim
Date: Wed Nov 15 2017 - 19:46:29 EST


On Wed, Nov 15, 2017 at 09:14:52AM +0100, Michal Hocko wrote:
> On Mon 13-11-17 09:28:33, Minchan Kim wrote:
> [...]
> > void arch_tlb_gather_mmu(...)
> >
> > tlb->fullmm = !(start | (end + 1)) && atomic_read(&mm->mm_users) == 0;
>
> Sorry, I should have realized sooner but this will not work for the oom
> reaper. It _can_ race with the final exit_mmap and run with mm_users == 0

If someone see mm_users is zero, it means there is no user to access
address space by stale TLB. Am I missing something?