Re: [PATCH v2 2/3] userfaultfd: UFFDIO_REMAP uABI

From: Suren Baghdasaryan
Date: Fri Oct 06 2023 - 11:02:22 EST


On Fri, Oct 6, 2023 at 5:30 AM David Hildenbrand <david@xxxxxxxxxx> wrote:
>
> On 04.10.23 01:39, Lokesh Gidra wrote:
> > On Tue, Oct 3, 2023 at 11:26 PM Suren Baghdasaryan <surenb@xxxxxxxxxx> wrote:
> >>
> >> On Tue, Oct 3, 2023 at 2:21 PM Peter Xu <peterx@xxxxxxxxxx> wrote:
> >>>
> >>> On Tue, Oct 03, 2023 at 11:08:07PM +0200, David Hildenbrand wrote:
> >>>> Sorry I have to ask: has this ever been discussed on the list? I don't see
> >>>> any pointers. If not, then probably the number of people that know about the
> >>>> history can be counted with my two hands and that shouldn't be the basis for
> >>>> making decisions.
> >>>
> >>> For example:
> >>>
> >>> https://lore.kernel.org/all/1425575884-2574-21-git-send-email-aarcange@xxxxxxxxxx/
>
> Sorry, I had to process a family NMI the last couple of days.
>
> >>
> >> There was another submission in 2019:
> >> https://lore.kernel.org/all/cover.1547251023.git.blake.caldwell@xxxxxxxxxxxx/
>
> It would be good to link them in the cover letter and shortly explain
> why that wasn't merged back then (if there was any reason).

Will do. I could not find the reason but will check again.

>
> >>
> >> Though both times it did not generate much discussion. I don't have a
> >> strong preference though MOVE sounds more generic to me TBH (it
> >> specifies the operation rather than REMAP which hints on how that
> >> operation is carried out). But again, I'm fine either way.
> >
> > That's a good point. IMHO, if in future we want to have the fallback
> > implemented, then MOVE would be a more appropriate name than REMAP.
> >
> >> As for UFFDIO_MOVE_ZERO_COPY_ONLY vs UFFDIO_MOVE_MODE_ALLOW_COPY, I
> >> find it weird that the default (the most efficient/desired) mode of
> >> operation needs a flag. I would prefer to have no flag initially and
> >> add UFFDIO_MOVE_MODE_ALLOW_COPY or whatever name is more appropriate
> >> when/if we ever need it. Makes sense?
> >
> > Agreed!
>
> I agree. One could have UFFDIO_MOVE that is best-effort and documented
> like that, and a to-be-named future extension that always works but
> might be more expensive.
>
>
> Ideally we'd have an interface that does not expose and/or rely on such
> low-level information and simply always works, but getting that would
> mean that we'd have to implement the fallback immediately ... so I guess
> we'll have to expose a best-effort interface first.

Sounds good. I'll try to post the next version early next week. Thanks
for the input folks!

>
> --
> Cheers,
>
> David / dhildenb
>