From patchwork Mon May 6 08:46:27 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Baolin Wang X-Patchwork-Id: 13655145 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 84E6FC10F16 for ; Mon, 6 May 2024 08:46:58 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id B33626B0085; Mon, 6 May 2024 04:46:53 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A1F576B0087; Mon, 6 May 2024 04:46:53 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 8E6B76B0088; Mon, 6 May 2024 04:46:53 -0400 (EDT) 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 6C9A46B0085 for ; Mon, 6 May 2024 04:46:53 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 2F85CA1606 for ; Mon, 6 May 2024 08:46:53 +0000 (UTC) X-FDA: 82087340706.21.0CBA338 Received: from out30-113.freemail.mail.aliyun.com (out30-113.freemail.mail.aliyun.com [115.124.30.113]) by imf06.hostedemail.com (Postfix) with ESMTP id 256E4180012 for ; Mon, 6 May 2024 08:46:50 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=T4eV50PJ; spf=pass (imf06.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.113 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=1714985211; 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=e+vn44n5PSOyoo2A5G9/u00K/6MLWmZWHwZJ5wJKuyA=; b=wkrjcDnLDDYcbOgGRnD6JZUG4Vqvk7T6R4adXexzE6a7hzarYShucSx+xq5FID+FM0Aaz1 nQ/wX2TgtpieQRBNvHYubBxZPZzvLTvkCp3oLVi4neB4gwowXW0ZS0bCBlJ7Gfg8iuAW75 mS66QL/5Eekgs47RJYt7x7myxGQAvM8= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=linux.alibaba.com header.s=default header.b=T4eV50PJ; spf=pass (imf06.hostedemail.com: domain of baolin.wang@linux.alibaba.com designates 115.124.30.113 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=1714985211; a=rsa-sha256; cv=none; b=SrYcOIKq+BzdHtNYMY+HRyc2L442BbUEiLjhbmz2QKk4txcXNU4IARrEq21IXcEUFq3pgX QY2AFmw2nacurZscGUjOF10NT6iNdg4kpZgcY/4RSHVYM3KrVLI3KzTEGHzs2Mewu/b7Ut IUTZHbvNS9JWv2GJm0Q13L0/NfxEtNQ= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.alibaba.com; s=default; t=1714985208; h=From:To:Subject:Date:Message-Id:MIME-Version; bh=e+vn44n5PSOyoo2A5G9/u00K/6MLWmZWHwZJ5wJKuyA=; b=T4eV50PJV3ZiYLN+BHbrXRlmnMSpFm8kK/ej/VeLnj22cuIvJMBGyHkvj4qpTsCJ8OjEObD2CWubAzKBXE9E52xkVNjJyyBYkKNq4Z7WHje4H1s+R8lBXlfKK3UMltf1aKY+poGxPWWW9S8gmuqmvUXf+Y5unjT+U6SKgtJG3gc= X-Alimail-AntiSpam: AC=PASS;BC=-1|-1;BR=01201311R721e4;CH=green;DM=||false|;DS=||;FP=0|-1|-1|-1|0|-1|-1|-1;HT=maildocker-contentspam033037067111;MF=baolin.wang@linux.alibaba.com;NM=1;PH=DS;RN=14;SR=0;TI=SMTPD_---0W5wQIAj_1714985206; Received: from localhost(mailfrom:baolin.wang@linux.alibaba.com fp:SMTPD_---0W5wQIAj_1714985206) by smtp.aliyun-inc.com; Mon, 06 May 2024 16:46:47 +0800 From: Baolin Wang To: akpm@linux-foundation.org, hughd@google.com Cc: willy@infradead.org, david@redhat.com, ioworker0@gmail.com, wangkefeng.wang@huawei.com, ying.huang@intel.com, 21cnbao@gmail.com, ryan.roberts@arm.com, shy828301@gmail.com, ziy@nvidia.com, baolin.wang@linux.alibaba.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH 3/8] mm: shmem: add an 'order' parameter for shmem_alloc_hugefolio() Date: Mon, 6 May 2024 16:46:27 +0800 Message-Id: <1484509ad5a9751b449e01fb695c4e7634be14bf.1714978902.git.baolin.wang@linux.alibaba.com> X-Mailer: git-send-email 2.39.3 In-Reply-To: References: MIME-Version: 1.0 X-Rspamd-Queue-Id: 256E4180012 X-Rspam-User: X-Rspamd-Server: rspam04 X-Stat-Signature: 3195jsphcgfjh5k5pkg6jocqu3ce4bnf X-HE-Tag: 1714985210-191679 X-HE-Meta: U2FsdGVkX181VBxB/HurniHfCWfVGjc63bjo0V0mZZRFpRYQaRJXG/A3d3W3sJtKmwz2PvtqGG9HtGqw+bvgWSfRwTcBPc50XauIDrMsf6xwW887QAeWFPuLgnQ6n3eh0dWqCE8WsfRSexsSHfCuTr2yZz1uTpjGPUKrzhaDV7+YxRrPPR6cf1gMRfjk6OgDckDRYYxxmhUC2/xVrskGkqAguMi8nJslls9zNURQBWSwfj9FOtrUzr+gFd3e+mXllmAT4LqINV9CL2NwU+bi2pwR1JAaDOaLZkvh5zZ/N1HFuRyh1xeAZ/IzllrGwgscqd+tSDfjALmjY2fYzsKL22BQ0kCkSAODAxPXqIvjF3kOjmbA1adF+Nq3CM3Kmg4GeG++C3t5f8ja9HnzNu1gjIwAaZ1ptKou2Em0OFqYdu62hKrEVYmR0rGz5B+QE35CNpzhhyAu69bHaoAoascQKzpBdc8COjkzJ2/jmwqj/70vMC+xFU2kvHEGIHIQ20BixUqxYj1w8GRSuF87ijj70cMWZm/RtyqpKCmhNSGODUheP/zImLos/XNJoPTF9J/85HtOL42ELNwnVY5EZIWhQXtoptqzy/9yNM4yP8Z7uLQlmEVqnlrmnbm1RzRTNgH8V7iBgj6Hi1kBVYK9FEdil8XjS5PrG4/M8BcEFgc5udknS/KMhsypNqHSgdNSOGXwuhNma88w7/FqigMSuB8t0PQ20TDS7t71mYJ6GN6T8dYfA+rJNR9dKVa4Hun39FkbqO3AKVsnKqkBHgMbJDqXB1QNT5mmCqXoN8QHo38MWzv8tVUtO2GBbG/mCXW2GSJDKMZZuAxJjG0+3rMl1LqSkm61DI7hM+V9rdbBwu3IoNOtDz+OJ42HF7ES/e/lC+H0TBEWX/y0EWO08WMRuAO532g1q0boef19uDseVxQN+W3iadhwRxmgclzTSE6jhfV386nzdfa4l2J5p8Lcsaz f3cxyDDX XwO/Eo/VcWx2wzmzu0oYq5b89gi/xHqrYFRo9sIShJJZEljMd4Y1cbmKaBhwl7oTJd+yZ+vNdLXGpIyhVddvrNgt/y0rP6UhXLixU+Ryw1AOYqhyKOY290LPRy8BBRxf98LaBvTAEgEwXFx2vBUtEA1NjkwngWFTa0PTRzZDmGb+B2PtO6Xrlr7RP7iWTokll147JP+ymaf+SGT5XEo6rC9AO82z3D5zgiBN0BX+rC25SzIyQr7MFAVCeJarX7dJTgMUw1iBd0sgigq6ju+zBdFVQmLjlvubkNnnL 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: Add a new parameter to specify the huge page order for shmem_alloc_hugefolio(), as a preparation to supoort mTHP. Signed-off-by: Baolin Wang --- mm/shmem.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mm/shmem.c b/mm/shmem.c index fa2a0ed97507..e4483c4596a8 100644 --- a/mm/shmem.c +++ b/mm/shmem.c @@ -1604,14 +1604,14 @@ static gfp_t limit_gfp_mask(gfp_t huge_gfp, gfp_t limit_gfp) } static struct folio *shmem_alloc_hugefolio(gfp_t gfp, - struct shmem_inode_info *info, pgoff_t index) + struct shmem_inode_info *info, pgoff_t index, int order) { struct mempolicy *mpol; pgoff_t ilx; struct page *page; - mpol = shmem_get_pgoff_policy(info, index, HPAGE_PMD_ORDER, &ilx); - page = alloc_pages_mpol(gfp, HPAGE_PMD_ORDER, mpol, ilx, numa_node_id()); + mpol = shmem_get_pgoff_policy(info, index, order, &ilx); + page = alloc_pages_mpol(gfp, order, mpol, ilx, numa_node_id()); mpol_cond_put(mpol); return page_rmappable_folio(page); @@ -1660,7 +1660,7 @@ static struct folio *shmem_alloc_and_add_folio(gfp_t gfp, index + HPAGE_PMD_NR - 1, XA_PRESENT)) return ERR_PTR(-E2BIG); - folio = shmem_alloc_hugefolio(gfp, info, index); + folio = shmem_alloc_hugefolio(gfp, info, index, HPAGE_PMD_ORDER); if (!folio) count_vm_event(THP_FILE_FALLBACK); } else {