lkml.org 
[lkml]   [2019]   [Feb]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v2 21/26] userfaultfd: wp: add the writeprotect API to userfaultfd ioctl
On Tue, Feb 12, 2019 at 10:56:27AM +0800, Peter Xu wrote:
> From: Andrea Arcangeli <aarcange@redhat.com>
>
> v1: From: Shaohua Li <shli@fb.com>
>
> v2: cleanups, remove a branch.
>
> [peterx writes up the commit message, as below...]
>
> This patch introduces the new uffd-wp APIs for userspace.
>
> Firstly, we'll allow to do UFFDIO_REGISTER with write protection
> tracking using the new UFFDIO_REGISTER_MODE_WP flag. Note that this
> flag can co-exist with the existing UFFDIO_REGISTER_MODE_MISSING, in
> which case the userspace program can not only resolve missing page
> faults, and at the same time tracking page data changes along the way.
>
> Secondly, we introduced the new UFFDIO_WRITEPROTECT API to do page
> level write protection tracking. Note that we will need to register
> the memory region with UFFDIO_REGISTER_MODE_WP before that.
>
> Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
> [peterx: remove useless block, write commit message, check against
> VM_MAYWRITE rather than VM_WRITE when register]
> Signed-off-by: Peter Xu <peterx@redhat.com>

I am not an expert with userfaultfd code but it looks good to me so:

Also see my question down below, just a minor one.

Reviewed-by: Jérôme Glisse <jglisse@redhat.com>

> ---
> fs/userfaultfd.c | 82 +++++++++++++++++++++++++-------
> include/uapi/linux/userfaultfd.h | 11 +++++
> 2 files changed, 77 insertions(+), 16 deletions(-)
>

[...]

> diff --git a/include/uapi/linux/userfaultfd.h b/include/uapi/linux/userfaultfd.h
> index 297cb044c03f..1b977a7a4435 100644
> --- a/include/uapi/linux/userfaultfd.h
> +++ b/include/uapi/linux/userfaultfd.h
> @@ -52,6 +52,7 @@
> #define _UFFDIO_WAKE (0x02)
> #define _UFFDIO_COPY (0x03)
> #define _UFFDIO_ZEROPAGE (0x04)
> +#define _UFFDIO_WRITEPROTECT (0x06)
> #define _UFFDIO_API (0x3F)

What did happen to ioctl 0x05 ? :)

\
 
 \ /
  Last update: 2019-02-21 19:29    [W:1.745 / U:0.088 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site