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 B9171C3DA64 for ; Wed, 31 Jul 2024 08:56:46 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 27D756B0082; Wed, 31 Jul 2024 04:56:46 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 22DBD6B0083; Wed, 31 Jul 2024 04:56:46 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 11C466B0085; Wed, 31 Jul 2024 04:56:46 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id E841D6B0082 for ; Wed, 31 Jul 2024 04:56:45 -0400 (EDT) Received: from smtpin15.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id 969481401CF for ; Wed, 31 Jul 2024 08:56:45 +0000 (UTC) X-FDA: 82399442370.15.47631DF Received: from out30-110.freemail.mail.aliyun.com (out30-110.freemail.mail.aliyun.com [115.124.30.110]) by imf30.hostedemail.com (Postfix) with ESMTP id 9C65E8000E for ; Wed, 31 Jul 2024 08:56:42 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=uQV0LWYz; spf=pass (imf30.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.110 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com; dmarc=pass (policy=none) header.from=linux.alibaba.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1722416175; a=rsa-sha256; cv=none; b=IQqgrnpeQf4Mc4Bc2dEeNgrwhjCrU09b03LQXJWqGJCIw5lmUgz1USs29oiDKo+G/E3XAg 6I/bsBsJgL9C8k1kLkU7wcWlq+YjUvN7mIG+EW+/LrBXRgqZJYI+x+vuHPj7JjK418K7/J f0FEbMNPwP/8akxX7xvytmbL3RPFibk= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=uQV0LWYz; spf=pass (imf30.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.110 as permitted sender) smtp.mailfrom=baolin.wang@linux.alibaba.com; dmarc=pass (policy=none) header.from=linux.alibaba.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1722416175; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=kpUCMeoZ5dTrePfp/H/ARFKfWPMZO8GvyAL7iVNght0=; b=Q4oZHQykUP0yQOmDGUgsNYRBZYVLH6yjJrMEDp2iu2TE1Au6U1tPa0Gbmgmb152U6L7nRu P7SijDgCCj1GysZCNsCUpjpG/qJW6jouJR74dXeXpu8ysX2NlbT1AGi/cXxv+NtbciW3A9 sofzTRPpc1X/X8ejD/M1wUl5jX5Tndg= DKIM-Signature:v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.alibaba.com; s=default; t=1722416200; h=Message-ID:Date:MIME-Version:Subject:To:From:Content-Type; bh=kpUCMeoZ5dTrePfp/H/ARFKfWPMZO8GvyAL7iVNght0=; b=uQV0LWYz5H3ACyI3WIIE0gW5IJDJg3t51STrc9ijnYC6xQSORgyUoqPIZvYDlT5YE/mj0k22wdKTGYRYQvDZAEmxQe54XkU4y1n6eqrcCS/roBrVOSHiQL2NVlNy9bkfGBWayuEqtxU3Jt3QSkYYkAcTjlnc7bYCwYVcbVs3CNo= X-Alimail-AntiSpam:AC=PASS;BC=-1|-1;BR=01201311R141e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=maildocker-contentspam033037067110;MF=baolin.wang@linux.alibaba.com;NM=1;PH=DS;RN=11;SR=0;TI=SMTPD_---0WBingo2_1722416197; Received: from 30.97.56.76(mailfrom:baolin.wang@linux.alibaba.com fp:SMTPD_---0WBingo2_1722416197) by smtp.aliyun-inc.com; Wed, 31 Jul 2024 16:56:38 +0800 Message-ID: Date: Wed, 31 Jul 2024 16:56:37 +0800 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 1/2] mm: shmem: avoid allocating huge pages larger than MAX_PAGECACHE_ORDER for shmem To: Barry Song <21cnbao@gmail.com> Cc: akpm@linux-foundation.org, hughd@google.com, willy@infradead.org, david@redhat.com, ryan.roberts@arm.com, ziy@nvidia.com, gshan@redhat.com, ioworker0@gmail.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <117121665254442c3c7f585248296495e5e2b45c.1722404078.git.baolin.wang@linux.alibaba.com> From: Baolin Wang In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Stat-Signature: it5thtr6gnf35qaeayx1p9nx4cawr5bk X-Rspamd-Queue-Id: 9C65E8000E X-Rspam-User: X-Rspamd-Server: rspam10 X-HE-Tag: 1722416202-663120 X-HE-Meta: U2FsdGVkX1+zGu0Qkn/KJnZGw6X2Pq1hyu5KhRvwguU5+sCajkYe/5d4hrzczfRvzBe2pob3PXeYE/g4YcilBvy7owFl4gz6PYRQe1pcjZwpMLpRB18WGTnk2OzHUrTXu+i6tgYDOOfFJLgpVF97481twE7IOtdOVDw0KNke73udG8OB4XOKFQSnMRVVqDYLaAstEGCt6v9oN6cq9G0ozC/FY5gO/rn0BHfuek6bT3g/Env6DG2xngjVRWz3EdEjlFCqzEb1NRZSF1yz8mpq8LXCBkCQNMu3BBRm6hodHwQC+bNDoMeNg4XatTVXmNR3WlExfPdG/C9C6HoFKDJj7AlI7+/WHc9TjXTruACtng7WRyfHTU4mYIBG3T2x6tEstTT9LOmwhIgA/3CG/rtF8/ruAgoTBBZoz9/I8KfZO7d3AG96ULqz+kj4sU+j1vRP32ouLPVR/TD98Njz5G/9bO5yDXks9Sgx0epNxK60/x/EjjtInCeILt+lPPq4nqZtDowu02z8V/alWPjVfAJpRViCNUzIfVgZXD+dI4c4QU9P69htMZj68QxjdsQR7snPIwWIz0gjRA9VCs2+IHO5jItVKiEfORTBmNBZGNuMZm4zyaUR0UuQ6rEXgjUNJP3mZN7+OKg17UKDKRvp1wFp+PbRFbNAZvCvS2yIdp/2C9qAamNargQ5X5/Jbu9RB+3IgNOFMzaxanWEd/ZnFc9LQJMHHG71QzCwe69laUPvgLiB1I71X2eMLqHuCZ7/0E2HRUxJLs5wyZ+iViMUN7KnqB1JOJC3cHUw1AAI7PqypN7yQIjfZ+DIhHZWr/7dypQsWUlhcav3Oz5t31C/QqqhQuEi8WUhG4dmfrw21v2Sitabx8ragsHNHO2GJ5rnI5rbmymHdRtI+Mcz0TM11H0X1Qx3cUwtcMcMxNTEhCEX/E0ylPWcJBtWTiVaFOIuOkAl374z2WvfsMojRb28xf9 ZrfKgr4L bW/abVTAwFPwxMOR/snr+qXHCRKvcg0x8ekL4urlVOuZbGJoa0aFREq7pKSiqmAMQtzYIxhvDoSNfv75RoXrr3yILgyo/huUMqvT04bN+qzjRsxt2V6oo51c5ea8MSsOsbcgW43/aM4z5eTuYLZMslGUlbhEsB1cK8oNGmcEkOR8rtCW1WXqPifhBY9CSS3kmd3rg+DzTwcgTfc6DZxtY0Fg4hWd8HCkbq23cA3vQF4BfRRzkU6qQKE0WTEiBrHwif7p9qEQpjyqYxZ416TiTfVYC3AOHGImRF3VaLm5znGUCvTgaTCho5bC8OqfTocFpPZ5g8Y5ubZqBFYlEXC/S3jkWDeGwlTGHPLzFdMgqFuesLs29CfEP2qEPjS5ZOBlB7Nm9 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000010, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On 2024/7/31 14:18, Barry Song wrote: > On Wed, Jul 31, 2024 at 1:46 PM Baolin Wang > wrote: >> >> Similar to commit d659b715e94ac ("mm/huge_memory: avoid PMD-size page cache >> if needed"), ARM64 can support 512MB PMD-sized THP when the base page size is >> 64KB, which is larger than the maximum supported page cache size MAX_PAGECACHE_ORDER. >> This is not expected. To fix this issue, use THP_ORDERS_ALL_FILE_DEFAULT for >> shmem to filter allowable huge orders. >> >> Fixes: e7a2ab7b3bb5 ("mm: shmem: add mTHP support for anonymous shmem") >> Signed-off-by: Baolin Wang > > Reviewed-by: Barry Song Thanks for reviewing. > >> --- >> mm/shmem.c | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/mm/shmem.c b/mm/shmem.c >> index 2faa9daaf54b..a4332a97558c 100644 >> --- a/mm/shmem.c >> +++ b/mm/shmem.c >> @@ -1630,10 +1630,10 @@ unsigned long shmem_allowable_huge_orders(struct inode *inode, >> unsigned long within_size_orders = READ_ONCE(huge_shmem_orders_within_size); >> unsigned long vm_flags = vma->vm_flags; >> /* >> - * Check all the (large) orders below HPAGE_PMD_ORDER + 1 that >> + * Check all the (large) orders below MAX_PAGECACHE_ORDER + 1 that >> * are enabled for this vma. > > Nit: > THP_ORDERS_ALL_FILE_DEFAULT should be self-explanatory enough. > I feel we don't need this comment? Sure. Andrew, please help to squash the following changes into this patch. Thanks. diff --git a/mm/shmem.c b/mm/shmem.c index 6e9836b1bd1d..432faec21547 100644 --- a/mm/shmem.c +++ b/mm/shmem.c @@ -1629,10 +1629,6 @@ unsigned long shmem_allowable_huge_orders(struct inode *inode, unsigned long mask = READ_ONCE(huge_shmem_orders_always); unsigned long within_size_orders = READ_ONCE(huge_shmem_orders_within_size); unsigned long vm_flags = vma->vm_flags; - /* - * Check all the (large) orders below MAX_PAGECACHE_ORDER + 1 that - * are enabled for this vma. - */ unsigned long orders = THP_ORDERS_ALL_FILE_DEFAULT; loff_t i_size; int order;