On Tue, May 21, 2019 at 10:44 AM Kirill Tkhai <ktkhai@xxxxxxxxxxxxx> wrote: > > On 21.05.2019 19:43, Andy Lutomirski wrote: > > On Tue, May 21, 2019 at 8:52 AM Kirill Tkhai <ktkhai@xxxxxxxxxxxxx> wrote: > >> > >> On 21.05.2019 17:43, Andy Lutomirski wrote: > > Do you mean that the code you sent rejects this case? If so, please > > document it. In any case, I looked at the code, and it seems to be > > trying to handle MAP_SHARED and MAP_ANONYMOUS. I don't see where it > > would reject copying a vDSO. > > I prohibit all the VMAs, which contain on of flags: VM_HUGETLB|VM_DONTEXPAND|VM_PFNMAP|VM_IO. > I'll check carefully, whether it's enough for vDSO. I think you could make the new syscall a lot more comprehensible bg restricting it to just MAP_ANONYMOUS, by making it unmap the source, or possibly both. If the new syscall unmaps the source (in order so that the source is gone before the newly mapped pages become accessible), then you avoid issues in which you need to define sensible semantics for what happens if both copies are accessed simultaneously. --Andy