From patchwork Mon Aug 5 16:31:19 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Aruna Ramakrishna X-Patchwork-Id: 13753824 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 DE7C5C3DA7F for ; Mon, 5 Aug 2024 16:31:59 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 736C46B0095; Mon, 5 Aug 2024 12:31:59 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6E6C26B00B2; Mon, 5 Aug 2024 12:31:59 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 587AC6B00B3; Mon, 5 Aug 2024 12:31:59 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 3947D6B0095 for ; Mon, 5 Aug 2024 12:31:59 -0400 (EDT) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id E3611A8820 for ; Mon, 5 Aug 2024 16:31:31 +0000 (UTC) X-FDA: 82418732382.11.0A1B6AD Received: from mx0b-00069f02.pphosted.com (mx0b-00069f02.pphosted.com [205.220.177.32]) by imf16.hostedemail.com (Postfix) with ESMTP id 200CD180002 for ; Mon, 5 Aug 2024 16:31:28 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=oWETe251; spf=pass (imf16.hostedemail.com: domain of aruna.ramakrishna@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=aruna.ramakrishna@oracle.com; dmarc=pass (policy=reject) header.from=oracle.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1722875428; 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=WTesXWDvFqfiAEvXeDVQR6yDba0aO0GMwRau1vV1WWQ=; b=CLfbgQUefDy2Xalsl0XJRs+Vdlv9LH0UZ4X8XFGimC7VwROgqOliUaW7qnDKr+N41pPI2e j5G/shspWSkoEijY7QQwZJmP9j1DfigYb96W5CxmCxzl38//KlQYVJu+KIMoUlWzqusu56 s6LdUr9NWaCgaDyicSFdlUmmN+okziA= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1722875428; a=rsa-sha256; cv=none; b=QSH00wtXHZfXn5rjSWOZriXRK3j+0eVsyYkolD8JCvMpM1Ca1brSLdrus01QDLYg2P09xt TPymdDknRfk+EwfZIDAwkUwKfDVSJ34XobA+mPWl90Rf27gvNZdLBN/r6jbw3uwvjLNTGN 0ZAH5QlIksk7dmgeOz1qqdxjRHaMX5c= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=oracle.com header.s=corp-2023-11-20 header.b=oWETe251; spf=pass (imf16.hostedemail.com: domain of aruna.ramakrishna@oracle.com designates 205.220.177.32 as permitted sender) smtp.mailfrom=aruna.ramakrishna@oracle.com; dmarc=pass (policy=reject) header.from=oracle.com Received: from pps.filterd (m0333520.ppops.net [127.0.0.1]) by mx0b-00069f02.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 475FtS5O004999; Mon, 5 Aug 2024 16:31:25 GMT DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=oracle.com; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; s=corp-2023-11-20; bh=W TesXWDvFqfiAEvXeDVQR6yDba0aO0GMwRau1vV1WWQ=; b=oWETe251TLPBzoGc+ L6gZU9nfoxb3aSvWzPFYOFQRI4QzPaCZE2b9rBdOWfBj6RcbPg1d2jepuMlDOSUK M+spkE+W3zaGxGaofzSwSly7mIb+l8BMS86x3Yluc5ip0kBXxXB4MmO4spaS+Lil WQPa6X5BHVo9jsiriTLNXO/PwE8yQ+p07KpcxtUbjSprAFKvC8CWRpMLGPxETBk0 87M21cnoLOOxz2XMlwhCRhRzDjuQmGSRlt/zepNKWd3U++D5tYdJNvQPjsSQKxgg MivSdvDBkU9BIALYUsXqP85e9EEMyKdQA7TKuKpwSHpdCBskN7f99qe/nZEjk5wP IOkIg== Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.appoci.oracle.com [138.1.37.129]) by mx0b-00069f02.pphosted.com (PPS) with ESMTPS id 40sckcb3f8-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 05 Aug 2024 16:31:25 +0000 (GMT) Received: from pps.filterd (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (8.17.1.19/8.17.1.19) with ESMTP id 475Faxda035130; Mon, 5 Aug 2024 16:31:24 GMT Received: from pps.reinject (localhost [127.0.0.1]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTPS id 40sb07mddm-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Mon, 05 Aug 2024 16:31:24 +0000 Received: from phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com [127.0.0.1]) by pps.reinject (8.17.1.5/8.17.1.5) with ESMTP id 475GPvBb002152; Mon, 5 Aug 2024 16:31:24 GMT Received: from aruramak-ol9.osdevelopmeniad.oraclevcn.com (aruramak-ol9.allregionaliads.osdevelopmeniad.oraclevcn.com [100.100.250.99]) by phxpaimrmta03.imrmtpd1.prodappphxaev1.oraclevcn.com (PPS) with ESMTP id 40sb07mdcs-3; Mon, 05 Aug 2024 16:31:24 +0000 From: Aruna Ramakrishna To: linux-mm@kvack.org Cc: willy@infradead.org, aruna.ramakrishna@oracle.com Subject: [PATCH 3/4] mm/mempolicy: Remove alloc_pages_mpol_noprof() Date: Mon, 5 Aug 2024 16:31:19 +0000 Message-ID: <20240805163120.5971-3-aruna.ramakrishna@oracle.com> X-Mailer: git-send-email 2.43.5 In-Reply-To: <20240805163120.5971-1-aruna.ramakrishna@oracle.com> References: <20240805163120.5971-1-aruna.ramakrishna@oracle.com> MIME-Version: 1.0 X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.28.16 definitions=2024-08-05_05,2024-08-02_01,2024-05-17_01 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 suspectscore=0 spamscore=0 phishscore=0 mlxlogscore=999 mlxscore=0 adultscore=0 malwarescore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.12.0-2407110000 definitions=main-2408050119 X-Proofpoint-GUID: beQeBipEYqckHiR6dh8VPeTNu5blOieZ X-Proofpoint-ORIG-GUID: beQeBipEYqckHiR6dh8VPeTNu5blOieZ X-Rspamd-Queue-Id: 200CD180002 X-Stat-Signature: 7eoy5g8gaszm9f4z7zeq9yi9odaym41p X-Rspamd-Server: rspam09 X-Rspam-User: X-HE-Tag: 1722875488-409175 X-HE-Meta: U2FsdGVkX1+5Ejht36kmmnoVvPROfESrxPr3ejvhwDl6wPv6et0qFW+gup8qpThBhlwSOATy4EYuNcfRPAP1gEz2yMzlUoR+9/0/kvYpPey86SUOMmCrz9t1tCMKsu8UHKEhU59se4Cpr/VYqb0i3YFpxXSGB3bAoiJbJyUboOVT2Pii1GlIN9iJwOUTpn6IkvTfw8c58dfA0G/nmDJnsfxdgP5AViQYogAwJDpij/O+FgaQUAUBYrJqH9azgDqI+vWz+4RWO8TOps+LuXMD7yU0LZlDdWrkY1NczRAo+48RFjzNzdG3wO7r1uN7VOEk4K+jOx9nZmWsejKrnQKEFznvBhaJ7djrt4DmPLwfmALy/SLh6aE1cUCm8q4OEJs8nhu3u4N1XHfMIWMzFZheP4q1fdDRh4TAD7XFOasyyhDK6LWqdDVAXi0GCOVKLQQknUP618N/se3dZ4T+64XSUHwFOGzlhWJyUJoUS1TyEM1oAHZPPAipA15Zm5itnFtv1yZEdynD0OMEWv/wJ0CBVn1o865Ms6pZMif44kbpAxkghOSEbL+sZhbnXc/xMlKv07IJ1e6Qgs96o6PLd6cX6KKRhj2ILmOZMdfWqPKjaR892trO7il7VePWhtM2SriLhT68p6uV989FQg0TBVAtg/zzCLvppLa8v73PVFHlyt5v4RK742Q8Mf09kzPCtrnbWmb3wU3KFSEHadB4+gidnwENInOG3A4RN14SYbABQp24s4fkeN4WSeragKeMDakouGupng3mTj2eBgPCgMgp0TpyHOf+QJZP8QOJ9nPCCp9F+hnRez4PaBIa0CVgHtqfzGWuxFw8d+avYX3YSR2ge7mE53iaTeqJzArMJdJd7otNVJ18PPo7fdP2Ai658MOMFOLSd2QvUvgoKH0+7c9D8gFBDh41wwF20ROMSCjP7pVxZFodXWs2J3v4H9kcBJLY7b2u8nKQxSx6s07ngYw Kj3sE+ei 4OUqC+3s7x+RychUzzJ2U8ToZEb0NknxjOg9wkgwoxRGGhv1MGQTaVUPrnL4zlad9eZ/o0w6ovnnPfDN2OH9PcMSJ3+cdgmIM3w2Pj03+lO1NYAVHDiDP1i1nfcHq1eGcckoOWePLCKPPpd5xhqOF3B0xBuxzhXDpvsVoj9rTqE2B3G5ju2A8V1oyinu1eRvhSF0pxMLqMeokURtLcgqSUMkSQhfb0t1rPooKCPwdK7O8Tp7FojNlptw6AtZ3rYHnTkKi 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: There are now no callers of either alloc_pages_mpol() or alloc_pages_mpol_noprof(). Remove both functions, and fully convert the body of folio_alloc_mpol_nprof() to use folios. Signed-off-by: Aruna Ramakrishna --- include/linux/gfp.h | 1 - mm/mempolicy.c | 42 ++++++++++++++++++++---------------------- 2 files changed, 20 insertions(+), 23 deletions(-) diff --git a/include/linux/gfp.h b/include/linux/gfp.h index f5ce91ccc954..58f23f15a71a 100644 --- a/include/linux/gfp.h +++ b/include/linux/gfp.h @@ -324,7 +324,6 @@ static inline struct folio *folio_alloc_mpol_noprof(gfp_t gfp, unsigned int orde #endif #define alloc_pages(...) alloc_hooks(alloc_pages_noprof(__VA_ARGS__)) -#define alloc_pages_mpol(...) alloc_hooks(alloc_pages_mpol_noprof(__VA_ARGS__)) #define folio_alloc(...) alloc_hooks(folio_alloc_noprof(__VA_ARGS__)) #define folio_alloc_mpol(...) alloc_hooks(folio_alloc_mpol_noprof(__VA_ARGS__)) #define vma_alloc_folio(...) alloc_hooks(vma_alloc_folio_noprof(__VA_ARGS__)) diff --git a/mm/mempolicy.c b/mm/mempolicy.c index 6132a230a3b9..9be32c3bfff2 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -2207,25 +2207,28 @@ static struct page *alloc_pages_preferred_many(gfp_t gfp, unsigned int order, } /** - * alloc_pages_mpol - Allocate pages according to NUMA mempolicy. + * folio_alloc_mpol_noprof - Allocate pages according to NUMA mempolicy. * @gfp: GFP flags. - * @order: Order of the page allocation. + * @order: Order of the folio allocation. * @pol: Pointer to the NUMA mempolicy. * @ilx: Index for interleave mempolicy (also distinguishes alloc_pages()). * @nid: Preferred node (usually numa_node_id() but @mpol may override it). * - * Return: The page on success or NULL if allocation fails. + * Return: The folio on success or NULL if allocation fails. */ -static struct page *alloc_pages_mpol_noprof(gfp_t gfp, unsigned int order, +struct folio *folio_alloc_mpol_noprof(gfp_t gfp, unsigned int order, struct mempolicy *pol, pgoff_t ilx, int nid) { nodemask_t *nodemask; - struct page *page; + struct folio *folio; + gfp |= __GFP_COMP; nodemask = policy_nodemask(gfp, pol, ilx, &nid); if (pol->mode == MPOL_PREFERRED_MANY) - return alloc_pages_preferred_many(gfp, order, nid, nodemask); + return page_rmappable_folio( + alloc_pages_preferred_many(gfp, order, + nid, nodemask)); if (IS_ENABLED(CONFIG_TRANSPARENT_HUGEPAGE) && /* filter "hugepage" allocation, unless from alloc_pages() */ @@ -2247,10 +2250,12 @@ static struct page *alloc_pages_mpol_noprof(gfp_t gfp, unsigned int order, * First, try to allocate THP only on local node, but * don't reclaim unnecessarily, just compact. */ - page = __alloc_pages_node_noprof(nid, - gfp | __GFP_THISNODE | __GFP_NORETRY, order); - if (page || !(gfp & __GFP_DIRECT_RECLAIM)) - return page; + folio = __folio_alloc_node_noprof( + gfp | __GFP_THISNODE | __GFP_NORETRY, + order, nid); + + if (folio || !(gfp & __GFP_DIRECT_RECLAIM)) + return folio; /* * If hugepage allocations are configured to always * synchronous compact or the vma has been madvised @@ -2260,26 +2265,19 @@ static struct page *alloc_pages_mpol_noprof(gfp_t gfp, unsigned int order, } } - page = __alloc_pages_noprof(gfp, order, nid, nodemask); + folio = __folio_alloc_noprof(gfp, order, nid, nodemask); - if (unlikely(pol->mode == MPOL_INTERLEAVE) && page) { + if (unlikely(pol->mode == MPOL_INTERLEAVE) && folio) { /* skip NUMA_INTERLEAVE_HIT update if numa stats is disabled */ if (static_branch_likely(&vm_numa_stat_key) && - page_to_nid(page) == nid) { + folio_nid(folio) == nid) { preempt_disable(); - __count_numa_event(page_zone(page), NUMA_INTERLEAVE_HIT); + __count_numa_event(folio_zone(folio), NUMA_INTERLEAVE_HIT); preempt_enable(); } } - return page; -} - -struct folio *folio_alloc_mpol_noprof(gfp_t gfp, unsigned int order, - struct mempolicy *pol, pgoff_t ilx, int nid) -{ - return page_rmappable_folio(alloc_pages_mpol_noprof(gfp | __GFP_COMP, - order, pol, ilx, nid)); + return folio; } /**