Received: by 2002:a05:6358:51dd:b0:131:369:b2a3 with SMTP id 29csp1228320rwl; Thu, 10 Aug 2023 08:11:38 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEhXaOiJyPV5ND5jqdLGdrF4RYuVvrzcq2hBq+/ekBQ9atozFnreE/v+fH7ga1soI+s6bZt X-Received: by 2002:a05:6a00:1782:b0:668:83b7:fd02 with SMTP id s2-20020a056a00178200b0066883b7fd02mr3065279pfg.31.1691680297675; Thu, 10 Aug 2023 08:11:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1691680297; cv=none; d=google.com; s=arc-20160816; b=a2LHcFIibsXXHwrgFJtRr5Rt30VJYEcAg9f59kmFTXFHIODul2lA0w5gbc910lWUzD kCSm6HlR/rihgI/oA7hNHsZ/o+MpBw4dgYOKcQmivbIg0La++j7toqcwPmAmZrotIM92 62QZhVaIGiJcD7IClydM6akKpzRo28Ljthgbf1Dl2lnCPGFjGUkdBb9Ur0B3msL1UeIR ucdWy9GSNboMawE84pm/np9wEN9eOEyamgbi6VwpuBdbOVP+SSfhRyl3acjONwof9PSR 0vy/vFBzDYqczPt0PsB2rJjfvj3S2v6tVoo/ibYFEy3EvEdGCb1zxirzDfE6XtxnqSU/ Hm1w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from; bh=jjkXyBj141BxTPIAchOKJ6WjdJR6TzI9YqXc7Ba2Scc=; fh=2S5jT4dIIqOhOs7q3j0K2DFa5C1ZmfWI8H2ybAUe/oA=; b=bWrF9tWeyLRtz41jIUWDPvBLGKryHyQN5aSkkyvC9cOqvSvgfpQ12P6HcTBgH6EzrL jF35ENqHs7aiDYh12CwAG4WsP+D6Vlx0rJ+SOcvGU9Q5OBBYWtPV2fyTvxWCIVvKX43a 752mBD2ex4iAOtObfghad0+MxYp+BzEs2G6pGvE404GLft4fss7HK766pTpuFS/qIH+0 OayHIxz9yJqLVwXf6atpzV3VTiBsEZg1weGcjIct0gxxAzog8A1Imwt1XxP3czoXxlg3 ggYlJud8IqKH2hoYfKK5j3kLVK+Z/OdutaCGEKyPh7CMFn3Iu2CPxLVCF1+DAaperWdl 4hDA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u3-20020a056a00158300b00661cd40bd67si1699900pfk.314.2023.08.10.08.11.19; Thu, 10 Aug 2023 08:11:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235727AbjHJO37 (ORCPT + 99 others); Thu, 10 Aug 2023 10:29:59 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:53362 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235706AbjHJO35 (ORCPT ); Thu, 10 Aug 2023 10:29:57 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id B9E6126BD for ; Thu, 10 Aug 2023 07:29:55 -0700 (PDT) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id D9B95113E; Thu, 10 Aug 2023 07:30:37 -0700 (PDT) Received: from e125769.cambridge.arm.com (e125769.cambridge.arm.com [10.1.196.26]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 288DB3F64C; Thu, 10 Aug 2023 07:29:53 -0700 (PDT) From: Ryan Roberts To: Andrew Morton , Matthew Wilcox , Yin Fengwei , David Hildenbrand , Yu Zhao , Catalin Marinas , Anshuman Khandual , Yang Shi , "Huang, Ying" , Zi Yan , Luis Chamberlain , Itaru Kitayama , "Kirill A. Shutemov" Cc: Ryan Roberts , linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: [PATCH v5 1/5] mm: Allow deferred splitting of arbitrary large anon folios Date: Thu, 10 Aug 2023 15:29:38 +0100 Message-Id: <20230810142942.3169679-2-ryan.roberts@arm.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230810142942.3169679-1-ryan.roberts@arm.com> References: <20230810142942.3169679-1-ryan.roberts@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-4.2 required=5.0 tests=BAYES_00,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE 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 In preparation for the introduction of large folios for anonymous memory, we would like to be able to split them when they have unmapped subpages, in order to free those unused pages under memory pressure. So remove the artificial requirement that the large folio needed to be at least PMD-sized. Reviewed-by: Yu Zhao Reviewed-by: Yin Fengwei Reviewed-by: Matthew Wilcox (Oracle) Reviewed-by: David Hildenbrand Signed-off-by: Ryan Roberts --- mm/rmap.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mm/rmap.c b/mm/rmap.c index 1f04debdc87a..769fcabc6c56 100644 --- a/mm/rmap.c +++ b/mm/rmap.c @@ -1446,11 +1446,11 @@ void page_remove_rmap(struct page *page, struct vm_area_struct *vma, __lruvec_stat_mod_folio(folio, idx, -nr); /* - * Queue anon THP for deferred split if at least one + * Queue anon large folio for deferred split if at least one * page of the folio is unmapped and at least one page * is still mapped. */ - if (folio_test_pmd_mappable(folio) && folio_test_anon(folio)) + if (folio_test_large(folio) && folio_test_anon(folio)) if (!compound || nr < nr_pmdmapped) deferred_split_folio(folio); } -- 2.25.1