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?