On Mon, 24 Jun 2024 10:42:00 -0400 Peter Xu <[email protected]> wrote:

> >         uffdio_api.features &= ~UFFD_FEATURE_WP_HUGETLBFS_SHMEM;
> >         uffdio_api.features &= ~UFFD_FEATURE_WP_UNPOPULATED;
> >         uffdio_api.features &= ~UFFD_FEATURE_WP_ASYNC;
> > #endif
> > 
> > If you run the userfaultfd selftests with the run_vmtests script we get
> > several failures stemming from trying to call uffdio_regsiter with the flag 
> > UFFDIO_REGISTER_MODE_WP. However, the kernel ensures in vma_can_userfault() 
> > that if CONFIG_PTE_MARKER_UFFD_WP is disabled, only allow the VM_UFFD_WP -
> > which is set when you pass the UFFDIO_REGISTER_MODE_WP flag - on 
> > anonymous vmas.
> > 
> > In parse_test_type_arg() I added the features check against 
> > UFFD_FEATURE_WP_UNPOPULATED as it seemed the most well know feature/flag. 
> > I'm 
> > more than happy to take any suggestions and adapt them if you have any! 
> 
> There're documents for these features in the headers:
> 
>        * UFFD_FEATURE_WP_HUGETLBFS_SHMEM indicates that userfaultfd
>        * write-protection mode is supported on both shmem and hugetlbfs.
>        *
>        * UFFD_FEATURE_WP_UNPOPULATED indicates that userfaultfd
>        * write-protection mode will always apply to unpopulated pages
>        * (i.e. empty ptes).  This will be the default behavior for shmem
>        * & hugetlbfs, so this flag only affects anonymous memory behavior
>        * when userfault write-protection mode is registered.
> 
> While in this context ("test_type != TEST_ANON") IIUC the accurate feature
> to check is UFFD_FEATURE_WP_HUGETLBFS_SHMEM.
> 
> In most kernels they should behave the same indeed, but note that since
> UNPOPULATED was introduced later than shmem/hugetlb support, it means on
> some kernel the result of checking these two features will be different.

I'm unsure what to do with this series.  Peter, your review comments
are unclear - do you request updates?

Also, the patches weren't cc:linux-mm which limits the audience.  I'll
drop this version.  Audra, please continue to move this forward.


Reply via email to