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 A2D3CE732FE for ; Thu, 28 Sep 2023 17:21:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3FA3A8D00C4; Thu, 28 Sep 2023 13:21:23 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3AB838D00C0; Thu, 28 Sep 2023 13:21:23 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 24B428D00C4; Thu, 28 Sep 2023 13:21:23 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 160D78D00C0 for ; Thu, 28 Sep 2023 13:21:23 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id E2B7D80328 for ; Thu, 28 Sep 2023 17:21:22 +0000 (UTC) X-FDA: 81286672404.08.20FD712 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf29.hostedemail.com (Postfix) with ESMTP id E2CE6120013 for ; Thu, 28 Sep 2023 17:21:20 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="Tw/S8nmJ"; spf=pass (imf29.hostedemail.com: domain of peterx@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1695921681; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=iLCvdP+ifYiv9tKvrBkXqvjWJNrinZhDljbzpgEPPfA=; b=LGgToRXcqoMpqqQmVzsRkpBsfmx29hvB5tpC7V7S+z2xkTcPB2X7PB0tfurRN40Gf+ywCi Pqe3DHD8rkTpmyE7pBWVnuAhX9BfV3HGVOzpAHP9aS90CDLc2XmCgZcLSXX4M1Q+Gr/amg DCf9/RP9GZpVSrcRnrHXmjSWY1eTV28= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1695921681; a=rsa-sha256; cv=none; b=XnpaP5gH/brxaTKJ1fdoxDVLiB3WskUospuDs94SI30Rbqghq8VypyXWD5RInrJkLRmiq9 ZN6LnYT1nBEl7B0/fhof8eFQFa+El5WEuYzdkjaBXn7l+YPtR9G8mxolyrXXcC+AEwKRc5 7FLAbsxGs5JzLyHQFtxLQBU9cGEBhB4= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b="Tw/S8nmJ"; spf=pass (imf29.hostedemail.com: domain of peterx@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=none) header.from=redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1695921680; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=iLCvdP+ifYiv9tKvrBkXqvjWJNrinZhDljbzpgEPPfA=; b=Tw/S8nmJw4gHCT0ldbYDo8SkNhJiJQm0ASRt//c2vGyH3CxRwYpmTJG3ee1bre+C9brJIA jygrRrzOTmVsrAxabj06jTq85puq64k2mCcZGkIZ6sjZhtGs5tdNAdzHru+QsOGE/tpVLj gO+EOBuwb6Iu3D479oNiI8UwMwMF/4Y= Received: from mail-qk1-f198.google.com (mail-qk1-f198.google.com [209.85.222.198]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-690-0vILsw1GMtKa_GMFgH1Ylg-1; Thu, 28 Sep 2023 13:21:18 -0400 X-MC-Unique: 0vILsw1GMtKa_GMFgH1Ylg-1 Received: by mail-qk1-f198.google.com with SMTP id af79cd13be357-774292de453so293685585a.0 for ; Thu, 28 Sep 2023 10:21:17 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1695921676; x=1696526476; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=iLCvdP+ifYiv9tKvrBkXqvjWJNrinZhDljbzpgEPPfA=; b=meUw0eH3h8P0d8nF4oqQZzWEX19XIUcF6IKfqwOSu+ROrzJNRA/xpqLgO4Kry+Lc2r Yp/oK4V2opUSrn4b1PAGZ0vfjdAZDXMaanS9I4VoBl6QN/ICSJAc0u2vkmPpnh/d81gF a3xs2TTcNH1sYQ+5Cx1vg0uazS43hlgBh8VPz6AkRDthcINQfa363ZiS8yYIp8zcs0y/ cSY6VriNYsS/s327nDkrFprKdh2RLYUA06be05z34aJ35b0Z9zcou0XEOrpMugEfOAWY LQjfFNbiKiNZ6mYb+Q5bARmo/nv6PCuxpou6ejo9r7JCGZilGebVjK4GGhFmnkFwqqyB pOdQ== X-Gm-Message-State: AOJu0YwtRQYjyPUyieJl0Mk1avq5poEjLzJzCDT121MLXwREnOvssRcL gOJROb2g67/Taz+SrYYb7piJKXQN3mLO4fL6eB72jjDUEZrIgPl/jLj24LkghdAHu7JcZnFWVSs ZOLrEX3nW/UQ= X-Received: by 2002:a05:620a:1aa7:b0:76f:2529:c06a with SMTP id bl39-20020a05620a1aa700b0076f2529c06amr1881939qkb.7.1695921676542; Thu, 28 Sep 2023 10:21:16 -0700 (PDT) X-Google-Smtp-Source: AGHT+IFY5MZ38G3zDUdTeFE1z7Vqza7falaPArMtp/kNBRT0uvWjSO0DcZ3GgFuB68ST5Lu5LJFozw== X-Received: by 2002:a05:620a:1aa7:b0:76f:2529:c06a with SMTP id bl39-20020a05620a1aa700b0076f2529c06amr1881924qkb.7.1695921676307; Thu, 28 Sep 2023 10:21:16 -0700 (PDT) Received: from x1n (cpe5c7695f3aee0-cm5c7695f3aede.cpe.net.cable.rogers.com. [99.254.144.39]) by smtp.gmail.com with ESMTPSA id t12-20020a05620a004c00b00767dcf6f4adsm4198188qkt.51.2023.09.28.10.21.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 28 Sep 2023 10:21:15 -0700 (PDT) Date: Thu, 28 Sep 2023 13:21:12 -0400 From: Peter Xu To: David Hildenbrand Cc: Jann Horn , Suren Baghdasaryan , akpm@linux-foundation.org, viro@zeniv.linux.org.uk, brauner@kernel.org, shuah@kernel.org, aarcange@redhat.com, lokeshgidra@google.com, hughd@google.com, mhocko@suse.com, axelrasmussen@google.com, rppt@kernel.org, willy@infradead.org, Liam.Howlett@oracle.com, zhangpeng362@huawei.com, bgeffon@google.com, kaleshsingh@google.com, ngeoffray@google.com, jdduke@google.com, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-kernel@vger.kernel.org, linux-kselftest@vger.kernel.org, kernel-team@android.com Subject: Re: [PATCH v2 2/3] userfaultfd: UFFDIO_REMAP uABI Message-ID: References: <20230923013148.1390521-1-surenb@google.com> <20230923013148.1390521-3-surenb@google.com> <03f95e90-82bd-6ee2-7c0d-d4dc5d3e15ee@redhat.com> <98b21e78-a90d-8b54-3659-e9b890be094f@redhat.com> MIME-Version: 1.0 In-Reply-To: <98b21e78-a90d-8b54-3659-e9b890be094f@redhat.com> X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline X-Rspamd-Queue-Id: E2CE6120013 X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: tctfkk7ubuagd8ajxrf9hjtk68f5ai4e X-HE-Tag: 1695921680-266003 X-HE-Meta: U2FsdGVkX1+tzTXNg8uZM7zhjO5+ZzkgA70gxUdWRfF4ywXtrjBJG/dWusnC0cfdWkaR+Uv0a/aQnwK+wAf4qFonSy/0WB2jm7BtlYmYEYk/eXBtQ0vBtFOU58ysur4n9uz3HWRBGW3Ri+7WKkO+iQ6mVlwEMgFeSydgVvXeC2ubeoqXBq6XOYeRi+K4JsDfNAC6wfpdFubYF3jmx72rMKrFGL7S5ty4VOAiqn/dblcO4KQY4SUz8BDCZGZ4C3GXvKVHkPkOZOZ6pIKX9MY6biBT4Y0TU8V4MYp0yaemjS04Z4JlyIep90LsOGezYM6yiNuqHirvaqOMb2ySZevPekRXVJXKeV0OmjJRKUjbnkAbrXSTfs9nCqoCwPNbbrSvxt5baOP60DfgLCIBT2GzHc+6ncb7HxqmlKTBFiDkiYDOxQ7z/V6PdSPu1cYholg92JzMc5c5aG9QtMgXj/tWw3lG1DW9YllZPA0nneLfkl3uw2XWd39b3pQ7bBF7F/b2v7N4fz72AnrgAMLwaA4vAU79U8FFgKzCIZ5C0JSd5KaLHYCDPxe+SfXiz+cpC7M/HMTElCigyD/pKBVjOw+ewHhQgPBJ+b0oskEGC8pP3BBeH1ndiKhgug2V8hHcUiCZReAWPy+cGdWhsQss5wr+h87BxWkqGWX+e0v+E0WsMlK9KgmnhP9LVz3HQFrJT3I2MW9mrXDS4MIxsiaVqmsbO46kkCJTOr7Gz5V0uzMzmh3CwSvgzbE4BW0cKv8a1NAUabcmkWfKA9OT4Qk6v4BIy+s4DkMbhD+MsCM51VxZ3cNw993DaFDnyvZ1YhtcjD1DiqvNHpsTTfTvN+N1G6VWhqniVPKOjOWd2BT/NuHnUqLuLE6hwVmYojp7G30zl4rsKVHm0YjfOtic16KckBrXYC/D/EMu52ib45QZFB9uXYA6z2er5PvPt43SCCi1io5tKJOjN+4WBczlX0G1vJn Js9bwqHH sRAGcArhtUz3BfNoNse8DWBYp3xRnOV/CNmEfgnF7qqC4wysvLOiVk8mAPX73PaC4PZlUs/9434QKLv6o7POVEpnYXIT7NOcyOxAXkYr5Iapz6mQREDgnrAtT1o2gU5ZqPNWhdiOgk7aaj6GSloard6WacWlYTCZtLXOo4b8/cdYPKIOuJhOnfra82YRPwEhgvVBNpsXVRrc/1HQMKiBgeC9CCu4rAdlQoKzVi/ErLGSYiE5SsP9PB8uvTrxoxjjz9xvhDMZKwR3iloE69PFW6i1YTFe/5V6B+3+cER8YFM6O4UNHRFqHAne5mXCtWmNUfueU7O2497TqX9g7nA/ktjEU35xbi/7zeYm2aDbMV6v/FA8QzhNah7B/BtEFrAKekKgr30veXWwKeZtUw62cxHizMUKoY4grNcBi 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 Thu, Sep 28, 2023 at 07:05:40PM +0200, David Hildenbrand wrote: > As described as reply to v1, without fork() and KSM, the PAE bit should > stick around. If that's not the case, we should investigate why. > > If we ever support the post-fork case (which the comment above remap_pages() > excludes) we'll need good motivation why we'd want to make this > overly-complicated feature even more complicated. The problem is DONTFORK is only a suggestion, but not yet restricted. If someone reaches on top of some !PAE page on src it'll never gonna proceed and keep failing, iiuc. do_wp_page() doesn't have that issue of accuracy only because one round of CoW will just allocate a new page with PAE set guaranteed, which is pretty much self-heal and unnoticed. So it'll be great if we can have similar self-heal way for PAE. If not, I think it's still fine we just always fail on !PAE src pages, but then maybe we should let the user know what's wrong, e.g., the user can just forgot to apply DONTFORK then forked. And then the user hits error and don't know what happened. Probably at least we should document it well in man pages. Another option can be we keep using folio_mapcount() for pte, and another helper (perhaps: _nr_pages_mapped==COMPOUND_MAPPED && _entire_mapcount==1) for thp. But I know that's not ideal either. -- Peter Xu