[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20210623024212.GA17269@altlinux.org>
Date: Wed, 23 Jun 2021 05:42:12 +0300
From: "Dmitry V. Levin" <ldv@...linux.org>
To: Andrew Morton <akpm@...ux-foundation.org>
Cc: Gleb Fotengauer-Malinovskiy <glebfm@...linux.org>,
Axel Rasmussen <axelrasmussen@...gle.com>,
Peter Xu <peterx@...hat.com>,
Mike Kravetz <mike.kravetz@...cle.com>,
Andrea Arcangeli <aarcange@...hat.com>,
Lokesh Gidra <lokeshgidra@...gle.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2] userfaultfd: fix UFFDIO_CONTINUE ioctl request
definition
Hi,
On Tue, Jun 01, 2021 at 05:34:32PM +0300, Gleb Fotengauer-Malinovskiy wrote:
> This ioctl request reads from uffdio_continue structure which justifies
> _IOC_READ flag.
> See NOTEs in include/uapi/asm-generic/ioctl.h for more information.
These ioctl flag usage rules seem to be a perpetual source of mistakes.
I suggest a slightly different wording of the commit message which is
hopefully a bit easier to follow:
"This ioctl request reads from uffdio_continue structure written by
userspace which justifies _IOC_WRITE flag. It also writes back to that
structure which justifies _IOC_READ flag.
See NOTEs in include/uapi/asm-generic/ioctl.h for more information."
Please make sure this patch is merged before v5.13 is released, otherwise
the UAPI bug would have to stay for backwards ABI compatibility.
> Fixes: f619147104c8 ("userfaultfd: add UFFDIO_CONTINUE ioctl")
> Signed-off-by: Gleb Fotengauer-Malinovskiy <glebfm@...linux.org>
> Acked-by: Peter Xu <peterx@...hat.com>
> ---
> include/uapi/linux/userfaultfd.h | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> v2 fix commit message
>
> diff --git a/include/uapi/linux/userfaultfd.h b/include/uapi/linux/userfaultfd.h
> index bafbeb1a2624..650480f41f1d 100644
> --- a/include/uapi/linux/userfaultfd.h
> +++ b/include/uapi/linux/userfaultfd.h
> @@ -80,8 +80,8 @@
> struct uffdio_zeropage)
> #define UFFDIO_WRITEPROTECT _IOWR(UFFDIO, _UFFDIO_WRITEPROTECT, \
> struct uffdio_writeprotect)
> -#define UFFDIO_CONTINUE _IOR(UFFDIO, _UFFDIO_CONTINUE, \
> - struct uffdio_continue)
> +#define UFFDIO_CONTINUE _IOWR(UFFDIO, _UFFDIO_CONTINUE, \
> + struct uffdio_continue)
>
> /* read() structure */
> struct uffd_msg {
Reviewed-by: Dmitry V. Levin <ldv@...linux.org>
--
ldv
Powered by blists - more mailing lists