From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 8C5D0C43334 for ; Mon, 25 Jul 2022 17:23:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D8A728E0002; Mon, 25 Jul 2022 13:23:57 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id D130C8E0001; Mon, 25 Jul 2022 13:23:57 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B65138E0002; Mon, 25 Jul 2022 13:23:57 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id A459B8E0001 for ; Mon, 25 Jul 2022 13:23:57 -0400 (EDT) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 75D75C0571 for ; Mon, 25 Jul 2022 17:23:57 +0000 (UTC) X-FDA: 79726294914.01.4670123 Received: from mail-pg1-f171.google.com (mail-pg1-f171.google.com [209.85.215.171]) by imf19.hostedemail.com (Postfix) with ESMTP id 15A821A009C for ; Mon, 25 Jul 2022 17:23:56 +0000 (UTC) Received: by mail-pg1-f171.google.com with SMTP id bf13so10934076pgb.11 for ; Mon, 25 Jul 2022 10:23:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=SyP1lp9NhrgVJ0QF8u0TLBtEits/q5s/vl9Y3LSoEXg=; b=b/08kaJ8KsSC4k4MLGCqiY2iLb5T0Hf8pxwAFJZrHQNFg0ipKIqpI4x5ZsCIHuSNf4 Y26BUKcnNDQF7iTi8idx32xxUO2WeWRX5eCjURIGyROLVRw37bW6DOY4D8cQXtJbX1Tb +Zs6H/70OUSvaCFukh40pr7fyYPI7U5t+1W3hgi+oh1XuLIB35nY0ijGBucKC8J1Tuil EqzhGvyyxxbYjJ/GOqbJJ+AqYgwgXxJoWDSVsCBmT7LUf7V3u58US06mo3PuVElJq1FF bA21SQnL6Yvf5yXbQ3LGFgVD5TQPx73Ry/3eHyQQIicLd7jH6uRPC7deZHocTLeqQRcd FYww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:subject:from:in-reply-to:date:cc :content-transfer-encoding:message-id:references:to; bh=SyP1lp9NhrgVJ0QF8u0TLBtEits/q5s/vl9Y3LSoEXg=; b=a1M1d7oZJw7Ou+mKveKq0R/YOGTzgTfoO9kbBukyhZPLL+tLuhbKv3lpn0hOJzDl/3 glyBRU8+pbJaBRKFk3J+p+8PiBRxa5H0M2XlUl/0hu+djLYt/XglC+fV67XUi0jP1hRu 6In8ZN6052gzs/8F+pEzs8fr1YABIPMpOI874koVulGgc0g3zhQkXKZsB+7c9YmF2hOD Pf9qyLDMGdMye3wztqmrKnSRliRaNpXmk5TpVqRqG37fNnBbAlCFPrfa6mIRMjoSmDbn peSkZmB0ns31Ayo0cM5YmceyI7o5B+o5jQrRpZ7P+nmO9fNu3uvokongCCnYwdEcs3dH iRjA== X-Gm-Message-State: AJIora8hyi+nCtXTbVuypJvMIsPJqNwc+49XkpHsSjsrrRxroVVLbTv2 s5CcOElwUq9ClFWz7U2Aszw= X-Google-Smtp-Source: AGRyM1vmx/g5VB8jtegzoBArWxzRIF4bSDgpIF2xDTOYQOG9xp28b3/u3P+7CLqn5eye3mV4aGf8XQ== X-Received: by 2002:a05:6a00:1350:b0:52b:89ce:3326 with SMTP id k16-20020a056a00135000b0052b89ce3326mr13744740pfu.6.1658769835807; Mon, 25 Jul 2022 10:23:55 -0700 (PDT) Received: from smtpclient.apple ([66.170.99.113]) by smtp.gmail.com with ESMTPSA id u129-20020a627987000000b00525521a288dsm9850805pfc.28.2022.07.25.10.23.54 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 25 Jul 2022 10:23:54 -0700 (PDT) Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 16.0 \(3696.120.41.1.1\)) Subject: Re: [PATCH v2 1/5] userfaultfd: introduce uffd_flags From: Nadav Amit In-Reply-To: Date: Mon, 25 Jul 2022 10:23:53 -0700 Cc: linux-mm@kvack.org, Andrew Morton , Mike Kravetz , Hugh Dickins , Axel Rasmussen , Peter Xu , David Hildenbrand Content-Transfer-Encoding: quoted-printable Message-Id: <391DA733-7F5D-4F24-A116-CF7178355F52@gmail.com> References: <20220718114748.2623-1-namit@vmware.com> <20220718114748.2623-2-namit@vmware.com> To: Mike Rapoport X-Mailer: Apple Mail (2.3696.120.41.1.1) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1658769837; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=SyP1lp9NhrgVJ0QF8u0TLBtEits/q5s/vl9Y3LSoEXg=; b=5b1psdi52IyJBqqmK+kkjuhcgu+hUzUyi+nm72X+EiV+mOfTBaCngFRpmXEUfq9cFMW94h v36w3nnxb+nrwONDFBRJThhr5a3ZgwY8aMJ7gRJXgFNGGX1K6E98ISWKxxtO82ngo3oF3c nWwydsyCPBiBOr/xIHMozRz5vkY5opo= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1658769837; a=rsa-sha256; cv=none; b=obNkmtuqeVJ103kWRKGnez/ZTPz7TPWyG+l6lqrFkpwCM4+mDQlRGOTHBk32hbAqE8ZAhF yBVDQjqUfGm2C0URUj3TaQ7PbLB1KBMaZ0sUTIFDmQYoJPpa4jBI/cQOcwGbZseRKCzNtf g/fgDc8povyIxgWRaQKELiPHr/PMTTc= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b="b/08kaJ8"; spf=pass (imf19.hostedemail.com: domain of nadav.amit@gmail.com designates 209.85.215.171 as permitted sender) smtp.mailfrom=nadav.amit@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=gmail.com header.s=20210112 header.b="b/08kaJ8"; spf=pass (imf19.hostedemail.com: domain of nadav.amit@gmail.com designates 209.85.215.171 as permitted sender) smtp.mailfrom=nadav.amit@gmail.com; dmarc=pass (policy=none) header.from=gmail.com X-Rspam-User: X-Rspamd-Queue-Id: 15A821A009C X-Rspamd-Server: rspam05 X-Stat-Signature: kxa3gercwant3trib8kky8ukp5n7xk3x X-HE-Tag: 1658769836-264385 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: > On Jul 23, 2022, at 2:12 AM, Mike Rapoport wrote: >=20 > On Mon, Jul 18, 2022 at 04:47:44AM -0700, Nadav Amit wrote: >> From: Nadav Amit >>=20 >> As the next patches are going to introduce more information that = needs >> to be propagated regarding handled user requests, introduce = uffd_flags >> that would be used to propagate this information. >>=20 >> Remove the unused UFFD_FLAGS_SET to avoid confusion in the constant >> names. >>=20 >> Introducing uffd flags also allows to avoid mm/userfaultfd from being >> using uapi (e.g., UFFDIO_COPY_MODE_WP). >>=20 >> Cc: Mike Kravetz >> Cc: Hugh Dickins >> Cc: Andrew Morton >> Cc: Axel Rasmussen >> Cc: Peter Xu >> Cc: Mike Rapoport >> Acked-by: David Hildenbrand >> Signed-off-by: Nadav Amit >> --- >> fs/userfaultfd.c | 22 +++++++++++--- >> include/linux/hugetlb.h | 4 +-- >> include/linux/shmem_fs.h | 8 +++-- >> include/linux/userfaultfd_k.h | 24 +++++++++------ >> mm/hugetlb.c | 3 +- >> mm/shmem.c | 6 ++-- >> mm/userfaultfd.c | 57 = ++++++++++++++++++----------------- >> 7 files changed, 73 insertions(+), 51 deletions(-) >>=20 >> diff --git a/fs/userfaultfd.c b/fs/userfaultfd.c >> index e943370107d0..2ae24327beec 100644 >> --- a/fs/userfaultfd.c >> +++ b/fs/userfaultfd.c >> @@ -1682,6 +1682,8 @@ static int userfaultfd_copy(struct = userfaultfd_ctx *ctx, >> struct uffdio_copy uffdio_copy; >> struct uffdio_copy __user *user_uffdio_copy; >> struct userfaultfd_wake_range range; >> + bool mode_wp; >> + uffd_flags_t uffd_flags; >>=20 >> user_uffdio_copy =3D (struct uffdio_copy __user *) arg; >>=20 >> @@ -1708,10 +1710,15 @@ static int userfaultfd_copy(struct = userfaultfd_ctx *ctx, >> goto out; >> if (uffdio_copy.mode & = ~(UFFDIO_COPY_MODE_DONTWAKE|UFFDIO_COPY_MODE_WP)) >> goto out; >> + >> + mode_wp =3D uffdio_copy.mode & UFFDIO_COPY_MODE_WP; >=20 > This seems to be the only place where mode_wp is used in this = function.=20 > I'd just drop it, and set uffd_flags directly from uffdio_copy.mode. = E.g. > something like >=20 > uffd_flags_t uffd_flags =3D UFFD_FLAGS_NONE; >=20 > ... >=20 > if (uffdio_copy.mode & UFFDIO_COPY_MODE_WP) > uffd_flags =3D UFFD_FLAGS_WP; Good point; taken.