On 08/15/2018 08:49 PM, Yang Shi wrote: > + downgrade_write(&mm->mmap_sem); > + > + /* Zap mappings with read mmap_sem */ > + unmap_region(mm, start_vma, prev, start, end); > + > + arch_unmap(mm, start_vma, start, end); Hmm, did you check that all architectures' arch_unmap() is safe with read mmap_sem instead of write mmap_sem? E.g. x86 does mpx_notify_unmap() there where I would be far from sure at first glance... > + remove_vma_list(mm, start_vma); > + up_read(&mm->mmap_sem);