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 919F1C001DE for ; Fri, 28 Jul 2023 19:39:50 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A688E6B0071; Fri, 28 Jul 2023 15:39:49 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 9F1ED6B0074; Fri, 28 Jul 2023 15:39:49 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 86B758D0001; Fri, 28 Jul 2023 15:39:49 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 705CD6B0071 for ; Fri, 28 Jul 2023 15:39:49 -0400 (EDT) Received: from smtpin09.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 3DF8C1CA11B for ; Fri, 28 Jul 2023 19:39:49 +0000 (UTC) X-FDA: 81062035698.09.AD3476F Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf02.hostedemail.com (Postfix) with ESMTP id F16FE80005 for ; Fri, 28 Jul 2023 19:39:46 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=WAgJINia; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf02.hostedemail.com: domain of peterx@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1690573187; 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=7SYf4OrR/ld3B4A6cONLgiWawWLuXcl3wa23pykc4IA=; b=tQK3cT+y1ZhTenTdB3f5D07VF/NjJuPXfmY22kXa3dnCtHSP4uitOEeA6gY/CF5E/5RSvS +y8pQc5D2zQky8ED5v/YXybFyBIelQNgdJvCjUH4a1V+dyqIeqlOQMwabZu9u5jsP7ZIoA NUmuviC021P8FgVTwyb9h6hZzJrDSU4= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=WAgJINia; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf02.hostedemail.com: domain of peterx@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=peterx@redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1690573187; a=rsa-sha256; cv=none; b=wN2lQebGjx+snx7Bkp/2TwdopWRKaYhaP8Mmv4cscy8eWBvOMRwTLV6Ieys+myBV17nARU 7jBz91ykbmZTaQ6vpTIMTrxra/ECnsNI4keW7QCO9a3a00KNRjfYyPHyHgqlglLQRIRs8F JcTXH1iy8p1ez2snzHNK1Ra7VbkF28c= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1690573186; 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=7SYf4OrR/ld3B4A6cONLgiWawWLuXcl3wa23pykc4IA=; b=WAgJINiaRQO0h206AsgpcdSUyHKR7zD6UpX0iqcNG57vx+oJhWcQ00sBLvx2ORfcymfhYU JVY9X8SIB3fuYMARX6Oxxf2jTCWb9YZ8ypDZJhpU5Oi26lmCSNLym7hWVgUaSOsT9ca5jM KLTmxDjl6Q1CaH6CDdKwQmhYcCE4cVY= Received: from mail-qt1-f197.google.com (mail-qt1-f197.google.com [209.85.160.197]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-632-4C2SoeTTMsW7r0QKUv4MOw-1; Fri, 28 Jul 2023 15:39:44 -0400 X-MC-Unique: 4C2SoeTTMsW7r0QKUv4MOw-1 Received: by mail-qt1-f197.google.com with SMTP id d75a77b69052e-4059b5c3dd0so5272701cf.0 for ; Fri, 28 Jul 2023 12:39:44 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1690573184; x=1691177984; 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=7SYf4OrR/ld3B4A6cONLgiWawWLuXcl3wa23pykc4IA=; b=Z717O+r6dbUlZyChwH4KdcGsaMl4VHA6WzDHowkIMSIsjOmj4HjydhD+JP3Xjo0Mqm oN66dCBYxDvQd7QRSxm2/rcHmeaDioRi/JZYdIe+BmRKdZiHwBF/4xQU79gNy5AbzBBk a1eOVoc/lTQfGSPU1k1Z1k4TXVux91xl11JIX4UhXeVl3+CVSMnTC+1k8mFYFvvZ4QQx 0gCLTDWCkV6OAkkVc7MvtuiCvNaBLYdXskOiW9kfDON7zZkNVW62i2ej+tVEfdpq6Uan 2dU82ZCE2THL0dZzVouhpsdJ4eCFKHeXTtEwDjC9pypqiV01YhtGYDcA8DiQWDTlN55n QJBw== X-Gm-Message-State: ABy/qLbsUk7Tujuo+0boOTt9+h1kRueq+Py8B0iXenPI2laal36dHd3C ugSDsKNmWnms1ec2M8iDyhgSAS+Q3ijYI+KpTPKR/1+nAl6KUmUPjbrYQCO6qtCIbWSXsR0sQxK /Gc2yPfvf2KE= X-Received: by 2002:a05:620a:4711:b0:765:435c:a4fa with SMTP id bs17-20020a05620a471100b00765435ca4famr222432qkb.0.1690573184467; Fri, 28 Jul 2023 12:39:44 -0700 (PDT) X-Google-Smtp-Source: APBJJlGmrTP10A8xdUl+VSEcIGR77+VRbVpJaJ9zwt72G0J8ooMANGBHVma6UiMEMYUfmQjE79CjSQ== X-Received: by 2002:a05:620a:4711:b0:765:435c:a4fa with SMTP id bs17-20020a05620a471100b00765435ca4famr222411qkb.0.1690573184203; Fri, 28 Jul 2023 12:39:44 -0700 (PDT) Received: from x1n (cpe5c7695f3aee0-cm5c7695f3aede.cpe.net.cable.rogers.com. [99.254.144.39]) by smtp.gmail.com with ESMTPSA id g12-20020a05620a13cc00b0076730d0b0b9sm1360440qkl.14.2023.07.28.12.39.43 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 28 Jul 2023 12:39:43 -0700 (PDT) Date: Fri, 28 Jul 2023 15:39:42 -0400 From: Peter Xu To: Linus Torvalds Cc: David Hildenbrand , linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, Andrew Morton , liubo , Matthew Wilcox , Hugh Dickins , Jason Gunthorpe , John Hubbard Subject: Re: [PATCH v1 0/4] smaps / mm/gup: fix gup_can_follow_protnone fallout Message-ID: References: <20230727212845.135673-1-david@redhat.com> MIME-Version: 1.0 In-Reply-To: X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset=utf-8 Content-Disposition: inline X-Rspamd-Queue-Id: F16FE80005 X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: ykkgiqztfoot8ejqqsaa6yb6wfa838w4 X-HE-Tag: 1690573186-864916 X-HE-Meta: U2FsdGVkX1+aiI76SZv+GmlhC0ZOkymdLJ9BvdcM4s+ocG26S1nIM8kUKVtm78PSNxK5Zj0rovBSgMuXkCZ99iQcKS4F9ogWrjVO55uLYpx7pWf8xUesWq+uStINOsCWvAF4ObJrH0S5R4eDOsUzc9z/2osfFiHyBHrF1NTiHoUEtRh2PQq2B2q+ufoamNooD7aow7pP6v9SzhpUYUlF+8qYhsU9xzvk0FOJCir1GuA3eO8JjQ2ujGpK2kOMlCzHLHDVxETzJ9t83Xci0oNMY+MTID0/r4Bu6u3mOCxbcy1AH2+b8KDTVLDn9fynTKomdx2Us/ZmIwifzevJsUnXyt/clLyaPKIYCKOR48ateipQ1CJd2sdVoyPbnPgVMHo+On4tN0VIh8OJhx1xEqt4uxvqdHBpVX5qSiUe5Ju30hCqnUlXLC5Le1Z5QLUYAzDtlpYtZKq1jlzfhXEtjYKUvgj7cq/t0gaypadnsRUc5jJDKAzm2VWGyZCqI6Q8xL2FZtXiTarht203wvJ72hF0fxUlgml+ek9UNEE6yzrEi9i1VUTNT+xX403kA0x7YJmCWucVMwSV9eWPvxyRNB4EQtJMPMNZw4dLtqD1uYFvb30/ewyXJsZYbCWmGHiVnie1zOG3MwrW/zEQiM4ORnbLRzBMMMnABVHQbV0p36L/b0HjIGzv+zpl7TRe3ahxEJOAwVwN/M8D9BlaU+//nHwZmSanQ0Rs1km9HDdLF1i3A4LPEZgLrxADVHIGVlty2vJOP0b64FEArdbWDn2pYsk9bhfo6hTVyhwU23//rdzaRDcsCX9MGt1Bq+1l+Nno2nHhMzugDVTHfTHrhJJBgVcPOQgK8DEpyg1uOxcdHwhKCSYTpiAy3ygitq7MFz8EalwxITw+7asMwF7osrjIj9FTGrW2Nm1Rckl4Nk7mvgwyEY3gh/aBerBr7NfhFWHm30jVqde9DyRnPIukapPdfsF hkXVvXOo LWyvUi1Jv5dMmRwo/pCQbobn4e7UCDTWWB/pxZnqRxEMzYvta0LuxSZkOGOLz/TxxokJBs0Ls3XFGwMUHQD0iLEs30cDy8HLcCstOKKhoEkpmWZLUjw3+EK0MxRzB6HN89PQ9iQf1KQPhBon8x0t61UUhNGH3hayK8FMeZHPgiB3efPbTuVxxBN7ndM0J29/wLCICxrZW0qAst0uX22OUO+K9cDCvTjMwqVFN+I41C7hzWOmmruev7n2WZcINZ+E5JKqTHIWihP2nEMmapm4aVLAgxa8Cv2rc6jn4qq+yLcCsKRyKrYd+CvMglzhIXPvZXBSvtqOC/tOEFGZZlDkC8iOfWvqy5gfEdEWWiiFemfbA4oqj0sCvqQkt8jsUYu/pwfBlA2BDA3YI2jlrsNyASislfgrPE/AxS8IE 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: Hi, Linus, On Fri, Jul 28, 2023 at 09:18:45AM -0700, Linus Torvalds wrote: > The original reason for FOLL_NUMA simply does not exist any more. We > know exactly when a page is marked for NUMA faulting, and we should > simply *ignore* it for GUP and follow_page(). > > I think we should treat a NUMA-faulting page as just being present > (and not NUMA-fault it). But then does it means that any gup-only user will have numa balancing completely disabled? Since as long as the page will only be accessed by GUP, the numa balancing will never trigger anyway.. I think KVM is manipulating guest pages just like that. Not sure whether it means it'll void the whole numa effort there. If we allow that GUP from happening (taking protnone as present) I assume it'll also stop any further numa balancing on this very page to trigger too, because even if some page fault handler triggered on this protnone page later that is not GUP anymore, when it wants to migrate the page to the other numa node it'll see someone is holding a reference on it already, and then we should give up the balancing. So to me FOLL_NUMA (or any identifier like it.. just to describe the caller's need; some may really just want to fetch the pfn/page) still makes sense. But maybe I totally misunderstood above.. Thanks, -- Peter Xu