Received: by 2002:a05:6a10:1a4d:0:0:0:0 with SMTP id nk13csp1942296pxb; Wed, 9 Feb 2022 07:44:45 -0800 (PST) X-Google-Smtp-Source: ABdhPJwvbVw5PG42kfl4is1uWFPnsxmuakxBk4k1l6+mpWaHtS3zuKk57iQSpGZ1uBdI4JtPN+w6 X-Received: by 2002:a05:6a00:170b:: with SMTP id h11mr2410321pfc.78.1644421485045; Wed, 09 Feb 2022 07:44:45 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1644421485; cv=none; d=google.com; s=arc-20160816; b=NqN0UTNtQCI6hY0Ka/D8646D7XPrFax7Rg4z4iFfEjl8osETmZoLY6EGAcy1Y2BQNa A9zCMFhDfanIlPAczMP0niYGHyhx28OMlEKI7QJJmPkyVYLDDqRIETMajsmq+VIkE2Wz bZnHTYKJi+CTasyyA3vrgFZDfIcEgx4lZtKcdU/nvSkAQA5eh927ZjcZZMOcPk+w4LDE HD3OkLC/jHR+0/m+fS0ozjt/lSV6O3m5zgIwN8eE6Hs2ctuSWdDnjlw/e6kL/H2n0UtS f52UnZudf/8pszWyILhNTi7qkNiKfXVC/Iwp/JRqa/roeFJkExe5qvqeWw7eDwpV2L9K /hCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=/jtBgBZJr0M09mLpWCdwbeiLcjTbmSLlRU+RSibqKYU=; b=bmkhNe1p0iRinZ7UAEjJ+8XFFLgsIBlstmsaHMJN/Y5u0qg5KgGeyluhk3uI2FltdK 1PH+4soz4fTlWk5/T6TWXj4nyktjdLj8WgcAF7mJBUmzdhmUwmSE+BJ05VClNAKQ91Nb /6eopK8Zdb2X21zebo/vkCfKqfvPl/FGmdG162n5PZlqyengZVoLm7qhmQrbCHQfE0sg 6+i7AJMWOEg898Z6+RXj/eMeD4TSlGvTFHCg/95pEDh+YyXw01GVBzunRpYsZjjju89w 0hRyK1Gg7nkhBiz7Li7IkrPXuiEmTAxwSXUkkUrK+JPZDnadVBPtf9W5iQaYzWEgEWlC hKdg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@canonical.com header.s=20210705 header.b=YGUUTIfw; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=canonical.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e3si16626362plo.90.2022.02.09.07.44.26; Wed, 09 Feb 2022 07:44:45 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@canonical.com header.s=20210705 header.b=YGUUTIfw; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=canonical.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234878AbiBIOYu (ORCPT + 99 others); Wed, 9 Feb 2022 09:24:50 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56038 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232842AbiBIOYs (ORCPT ); Wed, 9 Feb 2022 09:24:48 -0500 Received: from smtp-relay-internal-1.canonical.com (smtp-relay-internal-1.canonical.com [185.125.188.123]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 435AFC06157B for ; Wed, 9 Feb 2022 06:24:51 -0800 (PST) Received: from mail-pj1-f69.google.com (mail-pj1-f69.google.com [209.85.216.69]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-1.canonical.com (Postfix) with ESMTPS id BB4024003D for ; Wed, 9 Feb 2022 14:24:48 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1644416688; bh=/jtBgBZJr0M09mLpWCdwbeiLcjTbmSLlRU+RSibqKYU=; h=MIME-Version:References:In-Reply-To:From:Date:Message-ID:Subject: To:Cc:Content-Type; b=YGUUTIfwvcVRR0dDJuxbSq0xigWUAVG8eLwYP09agamrCAMJkRbWeLt0+PkkuWbTb ofFFZfwu4k0B0TEGKdoV7DNCtD1RDqPeVUUv4ePTWoEi+LVzO40u7uNAVC7260kLIZ H/idn+M4L5PvSviQg8oWqPPRCcTarAkv78/uRloeIlLiTwS3+yL1XcSJO6WP7+kUjR +ewBgMNhn8lTg9dXN8R/7gB7rkw3jyq+Is2sCPborKHVoCHQl2CFeMBY9DaVKhoVwV BDZOPpoYsL+ADYw3/nR6rWy38CNlvee8MtKVdxi2uksHOIF01xqE2L2xKhK5IWpdDh VW2d9Ctkwk9uw== Received: by mail-pj1-f69.google.com with SMTP id 62-20020a17090a09c400b001b80b0742b0so1793519pjo.8 for ; Wed, 09 Feb 2022 06:24:48 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=/jtBgBZJr0M09mLpWCdwbeiLcjTbmSLlRU+RSibqKYU=; b=W0TKto7qMWjI5ruvM6duoZnBDWSZcQ70a5CHtwJkPF6SesU1IpzgAsU7O9crqAwCGD U9/C+cUXe1cX4OLHXkVjA9AEeK06/xQkTjxp1Sj0+xe2BCYbQsW7GkZwUquXrdPvo1vJ 2mIpwQnGnEp0YnNg6GEbu1pbtkfLbrXAu9HXFIpewKXPimC2gqU4Dvo550a2ASHaT1bS MJWGnWymjejVT6R+7FiiShQ+gJaYgxX3OzOK/myZ9WzJ/fQPP8hx6Aa3Z5l3FGkvn5aH czXBruPNs1ZGlJ1W21mOaqAtY6tyAlv7eM9qqYqLFB9D+ukGhfpJ9WwZ8FUrEesFdEji sPGA== X-Gm-Message-State: AOAM531YQ+1uxgPCx9UYKLkHUdsak1p5Q/K53MrkAmkDneueuRE18CcB SwqToVQdg/X5lsyKZ4zt2dEC2e0r1yCKYHes7+BaaG9oCVlOpUnW0tFmkTXMs8K5HDKvEU6FFXo 8mi8rH/Db2bhQa0yAu4NUJS3yl2wep+O9PPbXbXVpvmJ0y9Pok3Ek7eQyTg== X-Received: by 2002:a63:e054:: with SMTP id n20mr2021189pgj.560.1644416687083; Wed, 09 Feb 2022 06:24:47 -0800 (PST) X-Received: by 2002:a63:e054:: with SMTP id n20mr2021171pgj.560.1644416686737; Wed, 09 Feb 2022 06:24:46 -0800 (PST) MIME-Version: 1.0 References: <20220204195852.1751729-1-willy@infradead.org> <20220204195852.1751729-52-willy@infradead.org> In-Reply-To: <20220204195852.1751729-52-willy@infradead.org> From: Mauricio Faria de Oliveira Date: Wed, 9 Feb 2022 11:24:34 -0300 Message-ID: Subject: Re: [PATCH 51/75] mm/rmap: Convert try_to_unmap() to take a folio To: "Matthew Wilcox (Oracle)" , Andrew Morton Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Andrew and Matthew, On Fri, Feb 4, 2022 at 5:00 PM Matthew Wilcox (Oracle) wrote: > > Change both callers and the worker function try_to_unmap_one(). ... > diff --git a/mm/rmap.c b/mm/rmap.c ... > @@ -1598,8 +1602,8 @@ static bool try_to_unmap_one(struct page *page, struct vm_area_struct *vma, > } > > /* MADV_FREE page check */ > - if (!PageSwapBacked(page)) { > - if (!PageDirty(page)) { > + if (!folio_test_swapbacked(folio)) { > + if (!folio_test_dirty(folio)) { > /* Invalidate as we cleared the pte */ > mmu_notifier_invalidate_range(mm, > address, address + PAGE_SIZE); > @@ -1608,11 +1612,11 @@ static bool try_to_unmap_one(struct page *page, struct vm_area_struct *vma, > } > > /* > - * If the page was redirtied, it cannot be > + * If the folio was redirtied, it cannot be > * discarded. Remap the page to page table. > */ > set_pte_at(mm, address, pvmw.pte, pteval); > - SetPageSwapBacked(page); > + folio_set_swapbacked(folio); > ret = false; > page_vma_mapped_walk_done(&pvmw); > break; ... This conflicts with patch [1], currently in mmotm, and I'll send another version anyway. Should that patch be on top of these folio changes, or the other way around? The latter would help w/ the stable backports that don't have folios yet, but I can send backports there as well; not a problem. Thanks, [1] https://lkml.kernel.org/r/20220131230255.789059-1-mfo@canonical.com [PATCH v3] mm: fix race between MADV_FREE reclaim and blkdev direct IO read -- Mauricio Faria de Oliveira