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 6DFABC636D3 for ; Wed, 8 Feb 2023 19:40:21 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D1C736B0071; Wed, 8 Feb 2023 14:40:20 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id CCC816B0072; Wed, 8 Feb 2023 14:40:20 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B948C6B007D; Wed, 8 Feb 2023 14:40:20 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id A4E516B0071 for ; Wed, 8 Feb 2023 14:40:20 -0500 (EST) Received: from smtpin27.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 739A5A7B2B for ; Wed, 8 Feb 2023 19:40:20 +0000 (UTC) X-FDA: 80445141000.27.EF619FC Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.129.124]) by imf01.hostedemail.com (Postfix) with ESMTP id 6EE5640007 for ; Wed, 8 Feb 2023 19:40:18 +0000 (UTC) Authentication-Results: imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Pmsjwe1l; spf=pass (imf01.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.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=1675885218; 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=YTbqkKN6Yn9mPljf6eztin1fXHDr26YFF+K4CGYyjHA=; b=7/s3sJWSR/f45hE5V6Kw1lfKreSFKFpltQ4/mS0UeEW4H4rSViP/9yK3fAZLeGapl5hu5v yRUEThaCn/0/3eGEsOukdUaptFxIsa+oo9y/duiE6w5dVj+4U19vMLCBJgyPg3hN+5lM9z 1Wjk+ZYgPSAUh2Qs279K94kWTuYIQtY= ARC-Authentication-Results: i=1; imf01.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=Pmsjwe1l; spf=pass (imf01.hostedemail.com: domain of peterx@redhat.com designates 170.10.129.124 as permitted sender) smtp.mailfrom=peterx@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1675885218; a=rsa-sha256; cv=none; b=Gf43Xa9ZMo148h3mFDbjjbpGFbTn7YZqC3viM8qSir/eGKfObc1YX22SEBYYMZSARLXgjy NPgBHxRuNFmFFIxw+WrLPWV2qPhbCU+cTr7Z7CJmgNpuinCoBg1vT+TZyLKKsqOcIn7Uih KoMK1ul3UFTjlAWVCyTqPlLqS7CXcIM= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1675885217; 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=YTbqkKN6Yn9mPljf6eztin1fXHDr26YFF+K4CGYyjHA=; b=Pmsjwe1lCNXza+Rf11NQvUMVKTcI2MSLYg1qEaCNh0cfBJrGEYwqK6bCym2RytURrs1Y6+ Td4wXAe/CaaFbE4/FsJFrXbg8MhzeVK0pRKYsMDC0vB1+k1or/RJsC7ncQxZLS1euVGtLQ vT4PYQ5A5j7toc59Gm9cDBGYf+zH6Cs= Received: from mail-qv1-f72.google.com (mail-qv1-f72.google.com [209.85.219.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_128_GCM_SHA256) id us-mta-613-9PoMeHQPOnWA3SLNZmV9Ww-1; Wed, 08 Feb 2023 14:40:14 -0500 X-MC-Unique: 9PoMeHQPOnWA3SLNZmV9Ww-1 Received: by mail-qv1-f72.google.com with SMTP id c10-20020a05621401ea00b004c72d0e92bcso10260798qvu.12 for ; Wed, 08 Feb 2023 11:40:14 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; 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=YTbqkKN6Yn9mPljf6eztin1fXHDr26YFF+K4CGYyjHA=; b=S0thGYFMVUWVqwSuO3EChVFpOjCdDi6lvTgbDNxhhnvtYvecHy5AHVN8yeqJOK44z5 ghy2puB57MkCRfQkuHrmxtYlImry0KHk68W8aHlomlvuH6rqakscF94QhFiDLygP3AKy XRTA8hwWt3j9mQvYtibDgLIsF+5tcaR5tdXx1XQNADegpHsDLDcQ6QgY+R+FqHGsWHU3 vffBIkca8hKhU79kn57CTlAi8IsPc/vXwRtzmR6uYvPpGtHCdACZcaf/92upmo2tvgKf /3sBS4YQvi3RdESQDXYi+rA5/A6/DUDQXlTjhYM8RCxxoNhhOJdFQCvZ8wXij9YUJpAO MAjg== X-Gm-Message-State: AO0yUKVIukLzrqT6rxt+46eHNkpaM8lgAuA0cB7/VZLkmsXltxG3kIx6 XrrGKSDmuHeqobRdPul+JWOWHUwSSRRu9VikK2p/6RHSFLpdhQrnVtrnVeaAgnnE4ZnlRD7rM5Y h9N8nuE4Rp6M= X-Received: by 2002:a05:622a:1115:b0:3b8:5199:f841 with SMTP id e21-20020a05622a111500b003b85199f841mr18456571qty.0.1675885214030; Wed, 08 Feb 2023 11:40:14 -0800 (PST) X-Google-Smtp-Source: AK7set8AKKDynairArMNVwk85MSRAH8mM1EQTwakkR8YpmnThJ3xC2qWiQJ6sz+vNkBFQX9z4flSjA== X-Received: by 2002:a05:622a:1115:b0:3b8:5199:f841 with SMTP id e21-20020a05622a111500b003b85199f841mr18456528qty.0.1675885213696; Wed, 08 Feb 2023 11:40:13 -0800 (PST) Received: from x1n (bras-base-aurron9127w-grc-56-70-30-145-63.dsl.bell.ca. [70.30.145.63]) by smtp.gmail.com with ESMTPSA id ea7-20020a05620a488700b007290be5557bsm12290202qkb.38.2023.02.08.11.40.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 08 Feb 2023 11:40:13 -0800 (PST) Date: Wed, 8 Feb 2023 14:40:11 -0500 From: Peter Xu To: Matthew Wilcox Cc: linux-mm@kvack.org, Vishal Moola , Hugh Dickins , Rik van Riel , David Hildenbrand , "Yin, Fengwei" Subject: Re: Folio mapcount Message-ID: References: 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-Server: rspam07 X-Rspamd-Queue-Id: 6EE5640007 X-Rspam-User: X-Stat-Signature: 9d7jfs8cytabn38ff74rb816ogw85smc X-HE-Tag: 1675885218-52923 X-HE-Meta: U2FsdGVkX19svwLX+7hQG6iu1S9rkNmtJnil3zUSYWTEp2hZ4V2TEBBoqBLuQeBMXkILDdk++0CV8IQ6ngnbo8aLyWnvl0mBoxJ0XULaxNLw/QTWcFqyjcuZui+wINx4VORMLN6flWDvS9mNIHU8l4Tzsr5dogVawukORyLaIeykkExT61AUzTQChzB4+q9viuPv8tyEn44yFGXWG8IDCyYRWPGuf22y/ivd2O1OGCWSi04Oq+fJWAKclvrzHu9n0NvNL6L19/JDsvaYlNHL1KU/rGUdkHCmpfiU8Zagoyv3Sj4L5pp08827aR/PcPOpVTgM/rJ5PccWZCk7R6/XpLerNy/f7U64W2FiOez4E6iCCAoYRJBM5g8US+a3K11xxhuq0TbmS61v5gu5rj+gdYNBkFtQMWHTbKk2ZSWpWh795eG4hgqqi5vjVGOkWjt4nTSZXxrIghD6TkyG5bI0yNwmCh4fU7A2mC1IxzRZ+pmDhWeM00TvgmmuGT1pt0gCfrBmuGeXzaDYgoHgXQ7xjRfZ60GGdLhcBTSYqJmE5LI7xcJcKJbeoWNz9SZVg5HJxSj0moMgjTg1UCef9ZQQpAqFIIV+gcOsWPXw3wtCuLUhLpq4vF3XogkpqNxt6jl1uc/8FpDfTDdzlY+aW9nE/SQWpT21lkbXKDDiEjfU8ntPBAz5ywtudqSmpJ8ahmsQCkalRpXObiMWeMkfrlO3YL+KneRghE6XrYNY0uwW9mk0dxArDzPP7Yp0B44V2MpDgGad4HAG1MOcUOg3OLCr3uQS8F53z8w0NJr63MgeKXT911v44HFdhDUu8T3TiFY5MwdPJlcaq6XYzBmCIDwZjyxVCOD+rklSX+05rkEst6AbU25cRoN//A0W9vJerklGWRWEifW0sOICoFWtrnlwUrZ0PDFUnMDTxB6Zwio3D+LQAILgOqtkqc1kX3ZlrAo7lsPDJ9wrcb6Ea2XAG2X FoOYr50T gdqIOUepze6g1KB5Eul4vMAjr/oGqQ9agGEnDEsiXg91DoLZu3nXSLX6ezHz6dHrfpETPaiVGgKFYjbDhMdOpJz7dmxWJhqV53Smm7O8ML5G5HJbIlnEG7XpTaFeT8/l2h7Ih88/dlGhybFQwzB9vr5OkAkcLWqc2u8P68gQ9dZgTBiBXYQBW27+AOsAGGVwK2NBnoc2ARIiEw3fAxj1/zpilqb2rYjW72H/bCome/wBYPgortdDPJReBdEkDsQ4Apijlb51ezKNn7b8kSM1b/NrH4RocRtgxBs5vtZlExt/nkrx8ceKUVQdg7bE00uf9hQCYMs+yBcFOFT1LCs/snNWySoMd6fsr33FLtBZRSjxksk6NqAYPr/lAMc8Up76Cl5xAVUKgFMmWvrbeyVmMjS9wYdYSfMzh83xqHB1L/tW1T+JQAUuURHJzwDRD15i+ruAN 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 Tue, Feb 07, 2023 at 11:27:17PM +0000, Matthew Wilcox wrote: > I've been thinking about this one, and I wonder if we can do it > without taking any pgtable locks. The locking environment we're in > is the page fault handler, so we have the mmap_lock for read (for now > anyway ...). We also hold the folio lock, so _if_ the folio is mapped, > those entries can't disappear under us. Could MADV_DONTNEED do that from another pgtable that we don't hold the pgtable lock? > They also can't appear under us. This seems right. > We hold the PTL on one PMD, but not necessarily on any other PMD we > examine. > > I appreciate that PTEs can _change_ under us if we do not hold the PTL, > but by virtue of holding the folio lock, they can't change from or to > our PFNs. I also think the PMD table cannot disappear under us > since we're holding the mmap_lock for read, and anyone removing page > tables has to take the mmap_lock for write. Seems right to me too. -- Peter Xu