Re: [RFC v3 PATCH 4/5] mm: mmap: zap pages with read mmap_sem for large mapping
From: Andrew Morton
Date: Mon Jul 02 2018 - 16:48:53 EST
On Mon, 2 Jul 2018 16:05:02 +0200 Michal Hocko <mhocko@xxxxxxxxxx> wrote:
> On Fri 29-06-18 20:15:47, Andrew Morton wrote:
> [...]
> > Would one of your earlier designs have addressed all usecases? I
> > expect the dumb unmap-a-little-bit-at-a-time approach would have?
>
> It has been already pointed out that this will not work.
I said "one of". There were others.
> You simply
> cannot drop the mmap_sem during unmap because another thread could
> change the address space under your feet. So you need some form of
> VM_DEAD and handle concurrent and conflicting address space operations.
Unclear that this is a problem. If a thread does an unmap of a range
of virtual address space, there's no guarantee that upon return some
other thread has not already mapped new stuff into that address range.
So what's changed?