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 85776C5AD49 for ; Wed, 28 May 2025 12:32:11 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 24A7E6B0089; Wed, 28 May 2025 08:32:11 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 1FB526B008A; Wed, 28 May 2025 08:32:11 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0EA9D6B008C; Wed, 28 May 2025 08:32:11 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id E348D6B0089 for ; Wed, 28 May 2025 08:32:10 -0400 (EDT) Received: from smtpin06.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 8726D806C2 for ; Wed, 28 May 2025 12:32:10 +0000 (UTC) X-FDA: 83492254020.06.F3EC996 Received: from out30-118.freemail.mail.aliyun.com (out30-118.freemail.mail.aliyun.com [115.124.30.118]) by imf30.hostedemail.com (Postfix) with ESMTP id CBF8980004 for ; Wed, 28 May 2025 12:32:07 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=itACtcUV; dmarc=pass (policy=none) header.from=linux.alibaba.com; spf=pass (imf30.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.118 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1748435529; 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-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=ZbL34hcVzNUdnkbTcE5pb/KuNOeDYKvzQq5G8mjvizg=; b=e3dbHDNnvoGjY6TNXUyoPBUdE2+tmha+GdU8rX435UWpWzwuyrL8ZWDvRBJSpEubwsTsI/ 07qW65gu+owTLWL4DcrUqhCdya8MydwZaSHRFJBY/n8G1anG36XEYuVhw1ELNbbP41xgEs P9l07MRZu8CYG66SZVEpaCk5bydEFeQ= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=itACtcUV; dmarc=pass (policy=none) header.from=linux.alibaba.com; spf=pass (imf30.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.118 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1748435529; a=rsa-sha256; cv=none; b=caFkZkHZBiJqLBG1bT58sjw+JOIvXVcH9nczHCidkNItVLgszCWGbIBq0D/8Lw0+/GMOzy 922MslVkSBYXJDBQn2n175DRo3QmidNcQmQmgCyavLfaUNKeXCNwPET9pXzhuczbjNkggE ae/WImx0dkWIfTQUbipiIOWWwKsjHt4= DKIM-Signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.alibaba.com; s=default; t=1748435523; h=From:To:Subject:Date:Message-ID:MIME-Version; bh=ZbL34hcVzNUdnkbTcE5pb/KuNOeDYKvzQq5G8mjvizg=; b=itACtcUV/mIWuw3q6eNuafvjdvPcHOoIZDGOABzeyLnykqpkMqMpE0MwpUHfyuQY8Cyzuiptg2QX9cNxeyUvM4Uln+6jZgdJSNK04x4305JRw4Eshv7wFKK1HlshX5c92jD+vzhYDqB/xOQ5kfbdSHfmGbtWiQuitBP9iPT5OUs= Received: from localhost(mailfrom:baolin.wang@linux.alibaba.com fp:SMTPD_---0WcDRdUh_1748435520 cluster:ay36) by smtp.aliyun-inc.com; Wed, 28 May 2025 20:32:01 +0800 From: Baolin Wang To: npache@redhat.com Cc: Liam.Howlett@oracle.com, aarcange@redhat.com, akpm@linux-foundation.org, anshuman.khandual@arm.com, baohua@kernel.org, baolin.wang@linux.alibaba.com, catalin.marinas@arm.com, cl@gentwo.org, corbet@lwn.net, dave.hansen@linux.intel.com, david@redhat.com, dev.jain@arm.com, hannes@cmpxchg.org, jack@suse.cz, jglisse@google.com, kirill.shutemov@linux.intel.com, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-trace-kernel@vger.kernel.org, lorenzo.stoakes@oracle.com, mathieu.desnoyers@efficios.com, mhiramat@kernel.org, mhocko@suse.com, peterx@redhat.com, raquini@redhat.com, rdunlap@infradead.org, rientjes@google.com, rostedt@goodmis.org, ryan.roberts@arm.com, sunnanyong@huawei.com, surenb@google.com, thomas.hellstrom@linux.intel.com, tiwai@suse.de, usamaarif642@gmail.com, vishal.moola@gmail.com, wangkefeng.wang@huawei.com, will@kernel.org, willy@infradead.org, yang@os.amperecomputing.com, ziy@nvidia.com, zokeefe@google.com Subject: [PATCH 1/2] mm: khugepaged: allow khugepaged to check all anonymous mTHP orders Date: Wed, 28 May 2025 20:31:46 +0800 Message-ID: X-Mailer: git-send-email 2.43.5 In-Reply-To: <20250515032226.128900-1-npache@redhat.com> References: <20250515032226.128900-1-npache@redhat.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: CBF8980004 X-Stat-Signature: fsykeihc6usyw9g7ny4ybbohudgyhrdz X-Rspam-User: X-HE-Tag: 1748435527-680519 X-HE-Meta: U2FsdGVkX1+ionbizdEBbcfADo97h/udW097dslQ9SOwqD+yeWlXBCZKHWji5yU34NuUmWo1qnTlqXoYsnvUHpx2tgp0ekfEjDOxt+5tZ8aHXETQzP2ASk9REdPsa37o7xyaD0alxst7krW11Mim9lokGIZeVT099fJILSSmIaC1fCWrWLrj9S4pOcTX1vHk3jjbOeLd8XZW2QFmXQctuFnY+cHbEMoqCOWMbe1RL7fqzNKeHKvWr9YxqOhd1AJjdBxQRrOmHrm2cm5+dcdLTQ33Sp3JFG7cytm/jIeaCTOMYoja7Q3huskQHzufvm5Qz7FJqWobPMgg5orK1CD8eE35O9SAVw36/PSFSoK33opC86M10ckUG44FAK5mE84erISzboVAj9pwSwMznFGsPlXIn8Fdvk6jIHTq2oukdSntA3Jl0744sGJRj7fezBp3I8nQVDuZh2gpRmc3HipfsLANEhr/zhob7/I1N2Ah2Cd4KBSu37WW62VROnpvtU7R1SwbHamg7+Yv3+I3Qq9iMTHELCoTbfH1oSgqRsUxbC/f81feLKsIsEtVJovmIPO4VtqmdPkbQdMQEw3DB99E0a3EL1w5ED5OWK+opZkq2W7l1nBcN031n8CUTqyEwmjKRtRRT0XDqxePvqG8NmV+8gr5kshyldTjPc/g6g4t6f3kNZDnZIb4yTHJFbbE8AGZJVM1jwyxp0Me6Tr+ZkFfCsqlr/2t7nP/atCfhkJNIKdNMvGgQgAHVlGskoo4OfpKIj0Hg3Eub6ekEaV2dhLgzBqgQtb4Q0ggyGIrC5d8QP3YPDGeeHVVNFVOF9SxRjKPo0KMyrDNR7Mcu86LcUap79RdGfnwo2IsSWy7557PA4aPZf3eG2ONvrDs94RJbMww1EkLyHwlG6nf1/vdl8T3gDirxgJVD/kEaLa1CUEvWDTzvdQsSq1ctnlGh1AXg/WAIIM8ntHUIs6ZrX5Hkft dfMpNG1g BRiTj9WeT7w0ApxQx3InPhqaKVrOgRq6zASTgN+X6h26pZmcKY1FaHFVrvhwrzHevuaSzghg9Ow6iFJYIrXflljiUwx8H2+aGIxvlHRdbfwAm7FmUrjgk9z0ySpfoGscRor7sEvhSwyAae7Jen0jJtl+STNp06Tk6B5SJ4KCpWKd6XuC3NsDb5aH+NPrxywHNAOdtfhjBx/Poq15ytsmyW6ZFAJSOX4w7X8c2F7snfBW6dcIlt0O5/ulm/f20k+G7lUljdtEQccST13M+7cMGLoanNInHYmAV9QpEKhT2AMG968pL6C0y4Yx4axwWbUbE/eziRzvSC5YK/po= 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: List-Subscribe: List-Unsubscribe: We have now allowed mTHP collapse, but thp_vma_allowable_order() still only checks if the PMD-sized mTHP is allowed to collapse. This prevents scanning and collapsing of 64K mTHP when only 64K mTHP is enabled. Thus, we should modify the checks to allow all large orders of anonymous mTHP. Signed-off-by: Baolin Wang --- mm/khugepaged.c | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/mm/khugepaged.c b/mm/khugepaged.c index 0723b184c7a4..16542ecf02dc 100644 --- a/mm/khugepaged.c +++ b/mm/khugepaged.c @@ -491,8 +491,11 @@ void khugepaged_enter_vma(struct vm_area_struct *vma, { if (!test_bit(MMF_VM_HUGEPAGE, &vma->vm_mm->flags) && hugepage_pmd_enabled()) { - if (thp_vma_allowable_order(vma, vm_flags, TVA_ENFORCE_SYSFS, - PMD_ORDER)) + unsigned long orders = vma_is_anonymous(vma) ? + THP_ORDERS_ALL_ANON : BIT(PMD_ORDER); + + if (thp_vma_allowable_orders(vma, vm_flags, TVA_ENFORCE_SYSFS, + orders)) __khugepaged_enter(vma->vm_mm); } } @@ -2618,6 +2621,8 @@ static unsigned int khugepaged_scan_mm_slot(unsigned int pages, int *result, vma_iter_init(&vmi, mm, khugepaged_scan.address); for_each_vma(vmi, vma) { + unsigned long orders = vma_is_anonymous(vma) ? + THP_ORDERS_ALL_ANON : BIT(PMD_ORDER); unsigned long hstart, hend; cond_resched(); @@ -2625,8 +2630,8 @@ static unsigned int khugepaged_scan_mm_slot(unsigned int pages, int *result, progress++; break; } - if (!thp_vma_allowable_order(vma, vma->vm_flags, - TVA_ENFORCE_SYSFS, PMD_ORDER)) { + if (!thp_vma_allowable_orders(vma, vma->vm_flags, + TVA_ENFORCE_SYSFS, orders)) { skip: progress++; continue; -- 2.43.5