From patchwork Wed Jan 18 23:22:15 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vishal Moola X-Patchwork-Id: 45532 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp28898wrn; Wed, 18 Jan 2023 15:24:08 -0800 (PST) X-Google-Smtp-Source: AMrXdXs3GXmAxoSfBIJy4ioqzG6sQL1wSXVf0DTIBGGpU4KvzeByagPr/4ViIwd9BkzxdGTSlcMp X-Received: by 2002:aa7:8006:0:b0:58b:cacd:2d12 with SMTP id j6-20020aa78006000000b0058bcacd2d12mr8590418pfi.28.1674084248717; Wed, 18 Jan 2023 15:24:08 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674084248; cv=none; d=google.com; s=arc-20160816; b=qslwSdSmk7iNOcMQ7LBOn6gn6AgYx/qTEVr64PyDn8z97/FSE30yJzDBR6JIMpAcOJ lfujdpiK3JzoyMHmHu5V6V6X17mw2hQwSYEpRKhWkn6rBGmbgPw2Q2JO63fwSosE9TJ8 JTMuUjgE+CYZYaF+q+ocrxktNtV7NGebaQOZtN4W04h2k+BKHHBa4rJVA0cnhN/h/qha PFwMEhY611T4yjl5s5sQrZC22HxNcCs89sFC2SYnQgADk0yzbzO9ShUtDSsOddy2fwuP j0nSrF5vLEurhbMB19Sx+i0D2jYAvgkHQrqJYp93gPwGKwpePy7Y9rela6yh0KILBC8B /rdA== 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 :dkim-signature; bh=1khdYzxT7PMCcz7jBx9VZXJLxnPij2EE71ujrUVxn1A=; b=jRH1K13+L/VJFM7uCukkG/FsOPEsiyRPwLuUyUPFrXgfPNRj2uyhClwoJVM6p8ZpiV dKjL3Y4YVTYYHEY9xaCU/YLNaCUqFXvni2scZzr0oLFJ1PmmF7XfMhzL3lo9tHAuufrB 9ddwfWv5TVeEY66+LbEs22kZJLXAR0EGrBUBdYkwI7GeOHeYjSZoz4/InK2kPvXSxqoB Yu4Pf9lPsVzDHFTkIFyGojIwHPNDeAI7s0HjlYGZNVNTgZ9WL7KEzaood32YC0hVAo83 Yj0Qr02DhsL3rIiGWnnEkPmQGpEcI84/jQKmFOT4NywCYhrVQlvDnZRhny7p6Qw8sKiS XPGQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=eTYkEu4Q; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id y38-20020a056a00182600b0058bbe63c377si18902385pfa.2.2023.01.18.15.23.56; Wed, 18 Jan 2023 15:24:08 -0800 (PST) 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; dkim=pass header.i=@gmail.com header.s=20210112 header.b=eTYkEu4Q; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229877AbjARXW1 (ORCPT + 99 others); Wed, 18 Jan 2023 18:22:27 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36594 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229739AbjARXWY (ORCPT ); Wed, 18 Jan 2023 18:22:24 -0500 Received: from mail-pl1-x630.google.com (mail-pl1-x630.google.com [IPv6:2607:f8b0:4864:20::630]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EA630654CA for ; Wed, 18 Jan 2023 15:22:23 -0800 (PST) Received: by mail-pl1-x630.google.com with SMTP id g23so609345plq.12 for ; Wed, 18 Jan 2023 15:22:23 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=1khdYzxT7PMCcz7jBx9VZXJLxnPij2EE71ujrUVxn1A=; b=eTYkEu4QWiTBpQ5PZ5ETHC6H9jjOL0AHY/mzZ+lFwdXVq1tuyLj8P3E8ewR+ImEgsN 2TKG+AYru0iFaf87vE/NcBHoRFaodj4Cq/jO5AHvjoFqicU95rVV+VCC4PEuK3cHjvzh GjJUtXwEbNPzRonxhAuHRRefgnS3GM3lnAbWbhZ0bjiRhRr1StSYxWesqcLL3iyignAo xGR7WE0QCGspcGOhpDXTO5lEolH12G/ONF8MoJTL+ZgQYmk/leR/bKANIOXBEaVBQt4W PiCDTuIL4Pqm+pTmwGQHbdrrM88Tmo/SToVqmP6+kV/l6w5fewFqt4VNShrV0AO2A3XS TJlw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=1khdYzxT7PMCcz7jBx9VZXJLxnPij2EE71ujrUVxn1A=; b=uujuiou5Te7MFbWJC9YR2Koz2EQDOI8XFJyQiNVxTRnrYFxNANoEuYi0lrzyx2za+h 97NI4JkE0bZVj8Ka40fbkbsffUhV8oM2kuNxZfMNAIcqVMIsuavLN2SzZcUdqh59iCMv mSBn99UjF52qW5dyTUfXs12NZFCx29tn0YdET+U2UilTA74OjMIYrtUDuJxCFp+HZF0D UKYS1rDrhzA2p+61I2C2OM9RPOnts5fg6B0N8HrM0+I0eIGm2Rzf+wd93ykpnllm2m8C jgYdpkbMIZSs91rTo1h/QYo3FobeglDWtXm7nDvVpnoy/zj2PMfXl4hMEOiaf/H6SbLv mSYQ== X-Gm-Message-State: AFqh2kqDckqZKjjvIe1jTciCy6wtlLwwGnIAfbf9YhVQEhGmlOhE1DpQ R4k9AYdRYydDOV82rooOOlY= X-Received: by 2002:a17:90a:d188:b0:227:e22:4a85 with SMTP id fu8-20020a17090ad18800b002270e224a85mr9314629pjb.9.1674084143365; Wed, 18 Jan 2023 15:22:23 -0800 (PST) Received: from fedora.hsd1.ca.comcast.net ([2601:644:8002:1c20::4e4b]) by smtp.googlemail.com with ESMTPSA id k1-20020a17090a7f0100b00223f495dc28sm1862265pjl.14.2023.01.18.15.22.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Jan 2023 15:22:23 -0800 (PST) From: "Vishal Moola (Oracle)" To: linux-mm@kvack.org Cc: akpm@linux-foundation.org, linux-kernel@vger.kernel.org, "Vishal Moola (Oracle)" Subject: [PATCH mm-unstable 1/5] mm/mempolicy: Convert queue_pages_pmd() to queue_folios_pmd() Date: Wed, 18 Jan 2023 15:22:15 -0800 Message-Id: <20230118232219.27038-2-vishal.moola@gmail.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230118232219.27038-1-vishal.moola@gmail.com> References: <20230118232219.27038-1-vishal.moola@gmail.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS 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 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1755404565120873819?= X-GMAIL-MSGID: =?utf-8?q?1755404565120873819?= The function now operates on a folio instead of the page associated with a pmd. This change is in preparation for the conversion of queue_pages_required() to queue_folio_required() and migrate_page_add() to migrate_folio_add(). Signed-off-by: Vishal Moola (Oracle) --- mm/mempolicy.c | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/mm/mempolicy.c b/mm/mempolicy.c index fd99d303e34f..00fffa93adae 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -442,21 +442,21 @@ static inline bool queue_pages_required(struct page *page, } /* - * queue_pages_pmd() has three possible return values: - * 0 - pages are placed on the right node or queued successfully, or + * queue_folios_pmd() has three possible return values: + * 0 - folios are placed on the right node or queued successfully, or * special page is met, i.e. huge zero page. - * 1 - there is unmovable page, and MPOL_MF_MOVE* & MPOL_MF_STRICT were + * 1 - there is unmovable folio, and MPOL_MF_MOVE* & MPOL_MF_STRICT were * specified. * -EIO - is migration entry or only MPOL_MF_STRICT was specified and an - * existing page was already on a node that does not follow the + * existing folio was already on a node that does not follow the * policy. */ -static int queue_pages_pmd(pmd_t *pmd, spinlock_t *ptl, unsigned long addr, +static int queue_folios_pmd(pmd_t *pmd, spinlock_t *ptl, unsigned long addr, unsigned long end, struct mm_walk *walk) __releases(ptl) { int ret = 0; - struct page *page; + struct folio *folio; struct queue_pages *qp = walk->private; unsigned long flags; @@ -464,19 +464,19 @@ static int queue_pages_pmd(pmd_t *pmd, spinlock_t *ptl, unsigned long addr, ret = -EIO; goto unlock; } - page = pmd_page(*pmd); - if (is_huge_zero_page(page)) { + folio = pfn_folio(pmd_pfn(*pmd)); + if (is_huge_zero_page(&folio->page)) { walk->action = ACTION_CONTINUE; goto unlock; } - if (!queue_pages_required(page, qp)) + if (!queue_pages_required(&folio->page, qp)) goto unlock; flags = qp->flags; - /* go to thp migration */ + /* go to folio migration */ if (flags & (MPOL_MF_MOVE | MPOL_MF_MOVE_ALL)) { if (!vma_migratable(walk->vma) || - migrate_page_add(page, qp->pagelist, flags)) { + migrate_page_add(&folio->page, qp->pagelist, flags)) { ret = 1; goto unlock; } @@ -512,7 +512,7 @@ static int queue_pages_pte_range(pmd_t *pmd, unsigned long addr, ptl = pmd_trans_huge_lock(pmd, vma); if (ptl) - return queue_pages_pmd(pmd, ptl, addr, end, walk); + return queue_folios_pmd(pmd, ptl, addr, end, walk); if (pmd_trans_unstable(pmd)) return 0; From patchwork Wed Jan 18 23:22:16 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vishal Moola X-Patchwork-Id: 45533 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp29149wrn; Wed, 18 Jan 2023 15:24:49 -0800 (PST) X-Google-Smtp-Source: AMrXdXtEvn2sPblIydtaZmEereGYua2dCFXZ2H3Y7IzVOXUAYceH+3l/VRU5x7iU5Xu1eFe+tZQV X-Received: by 2002:aa7:84c1:0:b0:58d:9b18:a36e with SMTP id x1-20020aa784c1000000b0058d9b18a36emr9100204pfn.31.1674084289535; Wed, 18 Jan 2023 15:24:49 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674084289; cv=none; d=google.com; s=arc-20160816; b=sWQO0ow/8+eA5qbTWlXj8DIaVYYYCCsO4uxDwyN3ayHwXHMt5OQQUQtkajdWvgP8y9 Sj7KxD+MGGzS62bvu47r5FrBYnsGcgmqbgt9dNE3lOX+9c4IJcqMF/uAXwtWCdlTCd/i aCtX/JnABTVqSg+FWOqWZcJEtZWqoMb8zamHJGq3ccuCDD4+VWxgGTs2pErBKTnvaPZl 9kJEAvunY7IGZ3Uva6UF7YJW5CQt6j+saxWr/27qTo19AylCoZmhFs/U+1vRxRESdkZh VzYZNbhZPZPcoHI5AoIbAYTCCuXkAboT9Xvz88yYZLQeCdmNm8UK4IaYH7gaPu1CWMm5 OAbQ== 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 :dkim-signature; bh=8vZic6jN1vVBvksvwJz1xQpCGfyGjrm+SSW90x/iIgk=; b=fYTB7309/U76R2CAcCDRjB1Qq6EhZnfGT1D3yst7vnpboHj4TH8XcxWxeDgpaq5SYk YO6YE9W1Ro2qPVAPptuCD+Plc3EpaRndoqIXWd2JfyLn6fh/ImVgLRWb5z05IjSB8YXt Qyj09pTMlwCCHRYVcy/j5M8Y70i+yXhLRd5UNE+b6wJaoegi/+bqfJ1mjimlYy5+fMKn red/X8rbYaBm7Z5h3gKTCykQ2NYQHC4A3bIZolHN2j14I5YERmxZsAhteirGVrG2Zc21 sn6V5naPLsyIvugjs7ouXcP2kJjas4HfZV00QbA8+2MN7iy6MkfZOsYYLFc13Rv6jPw6 NPfQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=plLzrfqu; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id s13-20020a056a00194d00b00580dd73d3d8si12721869pfk.286.2023.01.18.15.24.37; Wed, 18 Jan 2023 15:24:49 -0800 (PST) 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; dkim=pass header.i=@gmail.com header.s=20210112 header.b=plLzrfqu; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229900AbjARXWa (ORCPT + 99 others); Wed, 18 Jan 2023 18:22:30 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36618 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229572AbjARXWZ (ORCPT ); Wed, 18 Jan 2023 18:22:25 -0500 Received: from mail-pj1-x102f.google.com (mail-pj1-x102f.google.com [IPv6:2607:f8b0:4864:20::102f]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EB4B363E33 for ; Wed, 18 Jan 2023 15:22:24 -0800 (PST) Received: by mail-pj1-x102f.google.com with SMTP id v10-20020a17090abb8a00b00229c517a6eeso4068753pjr.5 for ; Wed, 18 Jan 2023 15:22:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=8vZic6jN1vVBvksvwJz1xQpCGfyGjrm+SSW90x/iIgk=; b=plLzrfqug0qycgZKzYJ6RHpBxvkpRXgY6TLreuwWkAlzfkSQlhcW8SQF4rL8+JBxTE 4W7xSaKb6YDytsbat4R3kDWOJnP7jL6b0O2dLvzFim8Csq+j+fa+RieFjmkR5514FIFM n/++JQD/VGUUrwitWCDh6Jkj0razxFRTPNaYbd4hLxUTRmYk2Qi8OzhBq2HxrFAJffT0 HIPUzvNZXNQHj/gGr7gtVk4DfzG3EHegoOQRgqwm6udpoYGhF+IshP70rfO8DoS+uYPx XYsr8em2yN/N62hb7RydrBF04dPqVuP04femkqre4+xnKeH8L7MNyIFeShxXS3a2R7Y5 X35Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=8vZic6jN1vVBvksvwJz1xQpCGfyGjrm+SSW90x/iIgk=; b=G0EaUqEKNLgFquCxgG8Pb0LLmB7tNymfaFRDwyM4J8/ik6W+52gb6gyoVH0/T4pkXo i/BADE86hJeO9s+Qmt4NvyGxQB7GYXKxuWzZbDrtisC23hWkYwiMT8jLeQNHOOpXI7G5 +Vrfq7/Ca2R+324W0IH7T8BgMARW3IXtCAZTbcLxYBl1FELyN9wGH7nd/ycrlUFbMFZU VunPpyVqOq/QmHMqTOVBjj2h7JkSThsu0ragZpqVhTA0ZoTqONHBOKEAd0FnaiYIHEJl pIDXlhRwfHU7ekQkh+49zKVQJ4eap5Zc5iE06e0TFRL6DT50r9ZjMAhe7+fanSRWqeyP RFKw== X-Gm-Message-State: AFqh2kq8QUDWN7ETTI74q6pY/ZeKZ4fXwkP2imI53zTl9t/VCUO/FVJm fh2/2BQXwNUSGKLiDX6Y1E/uQP6tYuo= X-Received: by 2002:a17:90a:f606:b0:228:f6cc:dc4f with SMTP id bw6-20020a17090af60600b00228f6ccdc4fmr9191489pjb.10.1674084144399; Wed, 18 Jan 2023 15:22:24 -0800 (PST) Received: from fedora.hsd1.ca.comcast.net ([2601:644:8002:1c20::4e4b]) by smtp.googlemail.com with ESMTPSA id k1-20020a17090a7f0100b00223f495dc28sm1862265pjl.14.2023.01.18.15.22.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Jan 2023 15:22:24 -0800 (PST) From: "Vishal Moola (Oracle)" To: linux-mm@kvack.org Cc: akpm@linux-foundation.org, linux-kernel@vger.kernel.org, "Vishal Moola (Oracle)" Subject: [PATCH mm-unstable 2/5] mm/mempolicy: Convert queue_pages_pte_range() to queue_folios_pte_range() Date: Wed, 18 Jan 2023 15:22:16 -0800 Message-Id: <20230118232219.27038-3-vishal.moola@gmail.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230118232219.27038-1-vishal.moola@gmail.com> References: <20230118232219.27038-1-vishal.moola@gmail.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS 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 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1755404607462434297?= X-GMAIL-MSGID: =?utf-8?q?1755404607462434297?= This function now operates on folios associated with ptes instead of pages. This change is in preparation for the conversion of queue_pages_required() to queue_folio_required() and migrate_page_add() to migrate_folio_add(). Signed-off-by: Vishal Moola (Oracle) --- mm/mempolicy.c | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/mm/mempolicy.c b/mm/mempolicy.c index 00fffa93adae..ae9d16124f45 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -491,19 +491,19 @@ static int queue_folios_pmd(pmd_t *pmd, spinlock_t *ptl, unsigned long addr, * Scan through pages checking if pages follow certain conditions, * and move them to the pagelist if they do. * - * queue_pages_pte_range() has three possible return values: - * 0 - pages are placed on the right node or queued successfully, or + * queue_folios_pte_range() has three possible return values: + * 0 - folios are placed on the right node or queued successfully, or * special page is met, i.e. zero page. - * 1 - there is unmovable page, and MPOL_MF_MOVE* & MPOL_MF_STRICT were + * 1 - there is unmovable folio, and MPOL_MF_MOVE* & MPOL_MF_STRICT were * specified. - * -EIO - only MPOL_MF_STRICT was specified and an existing page was already + * -EIO - only MPOL_MF_STRICT was specified and an existing folio was already * on a node that does not follow the policy. */ -static int queue_pages_pte_range(pmd_t *pmd, unsigned long addr, +static int queue_folios_pte_range(pmd_t *pmd, unsigned long addr, unsigned long end, struct mm_walk *walk) { struct vm_area_struct *vma = walk->vma; - struct page *page; + struct folio *folio; struct queue_pages *qp = walk->private; unsigned long flags = qp->flags; bool has_unmovable = false; @@ -521,16 +521,16 @@ static int queue_pages_pte_range(pmd_t *pmd, unsigned long addr, for (; addr != end; pte++, addr += PAGE_SIZE) { if (!pte_present(*pte)) continue; - page = vm_normal_page(vma, addr, *pte); - if (!page || is_zone_device_page(page)) + folio = vm_normal_folio(vma, addr, *pte); + if (!folio || folio_is_zone_device(folio)) continue; /* - * vm_normal_page() filters out zero pages, but there might - * still be PageReserved pages to skip, perhaps in a VDSO. + * vm_normal_folio() filters out zero pages, but there might + * still be reserved folios to skip, perhaps in a VDSO. */ - if (PageReserved(page)) + if (folio_test_reserved(folio)) continue; - if (!queue_pages_required(page, qp)) + if (!queue_pages_required(&folio->page, qp)) continue; if (flags & (MPOL_MF_MOVE | MPOL_MF_MOVE_ALL)) { /* MPOL_MF_STRICT must be specified if we get here */ @@ -544,7 +544,7 @@ static int queue_pages_pte_range(pmd_t *pmd, unsigned long addr, * temporary off LRU pages in the range. Still * need migrate other LRU pages. */ - if (migrate_page_add(page, qp->pagelist, flags)) + if (migrate_page_add(&folio->page, qp->pagelist, flags)) has_unmovable = true; } else break; @@ -703,7 +703,7 @@ static int queue_pages_test_walk(unsigned long start, unsigned long end, static const struct mm_walk_ops queue_pages_walk_ops = { .hugetlb_entry = queue_pages_hugetlb, - .pmd_entry = queue_pages_pte_range, + .pmd_entry = queue_folios_pte_range, .test_walk = queue_pages_test_walk, }; From patchwork Wed Jan 18 23:22:17 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vishal Moola X-Patchwork-Id: 45534 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp29307wrn; Wed, 18 Jan 2023 15:25:12 -0800 (PST) X-Google-Smtp-Source: AMrXdXuXmYu56sMM8DYSHah0s4aehOF3ekbtgGIj220rfn3TaSIRMaHedYlYv57aMLjm2oO80qDn X-Received: by 2002:a05:6a20:441:b0:b8:9f05:5216 with SMTP id b1-20020a056a20044100b000b89f055216mr8010527pzb.57.1674084311818; Wed, 18 Jan 2023 15:25:11 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674084311; cv=none; d=google.com; s=arc-20160816; b=rhu3eHSU16EXDRFUwnRWn+mawYu4iTfXScd0/7Yc1eyaCN8W/be2kesyRcOLGU5I0R XD8pnL8MjNvCVkRl4WO/+AGyrtYgEtigWlL3XptbO16kDbNh0r6U6VWCwcsqmJfUUGPZ riiQiy5DzoPrINSxaA3icK66WWboPHCjKOD/YxKdOwKrrncMcHlCRVMfmtpurf4KdOKV Mz9ETsj7Cfkjgvtn+bYkIZoOcwu6Y9OSxQ/uCI6uc/eb3GHS4Ca53eYfvkGDVES1Q3w0 wUoHNw8RtrNbBkwpHhFsBqoHqBug7tU4GBJcIfxdzwv81r3tir9Q5QS2goz4+zgB8iCQ AuUw== 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 :dkim-signature; bh=sR1JcCUA9O2Vny3R+G4SUtwxLVo8Eke3dTYifmkKbTA=; b=OpBCuni3YuzE8VOcqdZzvaiVEc7O0/DqlCUJ8wzTr27QKwYHW+QJ78GRURI/fb5RIK dHV6IoTvTfUnbH6G1WKrWr3zSb1t5UD1XkQpoMq0YM0m+rMIo+7AWlEln3tkcW/lbQkd Lw4e8+wMGJgE91dHdZ5HhrO6v0Ht1vvBB7HBobCNBwaU3NWCXFpVUQ6fJG3R/eb+dXir qPbKgwNDMHFm6W2T8Ql4YGAOo0TtC5vXy9rqwmEk95bUAsqAUQwVcLsl1z9MLIQV7xuj iUnpM8+V0ka6kOoyx/WgBWWkUPnb3tfHpSZh+tM4mI8qWau98FGPUTE4wdfq9dc0AcG8 VROQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=VLVGj2Me; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id w25-20020a634759000000b0047712cb3fe3si35774680pgk.590.2023.01.18.15.24.59; Wed, 18 Jan 2023 15:25:11 -0800 (PST) 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; dkim=pass header.i=@gmail.com header.s=20210112 header.b=VLVGj2Me; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229739AbjARXWh (ORCPT + 99 others); Wed, 18 Jan 2023 18:22:37 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36668 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229737AbjARXW0 (ORCPT ); Wed, 18 Jan 2023 18:22:26 -0500 Received: from mail-pl1-x62a.google.com (mail-pl1-x62a.google.com [IPv6:2607:f8b0:4864:20::62a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id DCE2666EF7 for ; Wed, 18 Jan 2023 15:22:25 -0800 (PST) Received: by mail-pl1-x62a.google.com with SMTP id y1so664224plb.2 for ; Wed, 18 Jan 2023 15:22:25 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=sR1JcCUA9O2Vny3R+G4SUtwxLVo8Eke3dTYifmkKbTA=; b=VLVGj2MeNhV4dG8tqMCOaUdWWZUjRbL/wzXS2nrU9rMdcdiWoHupAjfnkS2LZ1UIzY EIrqU/eNtw167F98QPa+DlF0ttEz6P6jzss97ZHeMD+Mnp+0o17cR9id+VKeOvQQTo3U yCYIeFH96KTFdJyLdWHN+Y55hcNZwYOVh0olOR9/ydyvrvK3SrD7Ds/NSW1Z0mk/pf2m RhJSpm+Ca0ZYRz9opt+TrOTf+OIbRsYV0dxpzVQLYDESUfHLZoFpRJy20nXvMeS7rqRO tTccJ45EBAGYT0CVJTr0FvUCBeU7cNfdMTbnxr39qIXoSZB1IxqhH3nzHofdm80Ce5K8 EJsA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=sR1JcCUA9O2Vny3R+G4SUtwxLVo8Eke3dTYifmkKbTA=; b=4fGmfZs/CpCoWtEkc4D1jzPOblbckwDIOVabvTgDdm27Yck97Gx/en+SUfGZ5rOVDj bFfSaYnCV7nogRUw/MICWSj0HOHENJ71uAziAOzANZZEWsAuWW1NOJFjYvoaaVYWEV7u Z2VYnPmmkDXyoYykPhwIGkNBlBpHPGg3eBtBqmRG/Tv7ZPFfzGvo0E9x3cpC+OGbHkkx TzMzKvHe91ILsGK4zG3Z7jjN1/FGKi/gx0q1pQ3ZZKBzlDlPw0bbYuvkX3ryn6W34noT nl/DWpKdsmDoFlhevBTtSY9A2pEpvsCzXYFOD4xkyrNhQDii3LkaXEGw+/o+twurh8Mh vR2A== X-Gm-Message-State: AFqh2kqRDmVgZPWPbGv8fiLTWeEOwn0kZFQdo1DMoaJgphIwV33u3cH2 wqVY6V1XaQJhLfrDAAjrGqw= X-Received: by 2002:a17:90a:2dce:b0:229:4a04:65eb with SMTP id q14-20020a17090a2dce00b002294a0465ebmr9156656pjm.31.1674084145299; Wed, 18 Jan 2023 15:22:25 -0800 (PST) Received: from fedora.hsd1.ca.comcast.net ([2601:644:8002:1c20::4e4b]) by smtp.googlemail.com with ESMTPSA id k1-20020a17090a7f0100b00223f495dc28sm1862265pjl.14.2023.01.18.15.22.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Jan 2023 15:22:25 -0800 (PST) From: "Vishal Moola (Oracle)" To: linux-mm@kvack.org Cc: akpm@linux-foundation.org, linux-kernel@vger.kernel.org, "Vishal Moola (Oracle)" Subject: [PATCH mm-unstable 3/5] mm/mempolicy: Convert queue_pages_hugetlb() to queue_folios_hugetlb() Date: Wed, 18 Jan 2023 15:22:17 -0800 Message-Id: <20230118232219.27038-4-vishal.moola@gmail.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230118232219.27038-1-vishal.moola@gmail.com> References: <20230118232219.27038-1-vishal.moola@gmail.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS 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 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1755404631100534569?= X-GMAIL-MSGID: =?utf-8?q?1755404631100534569?= This change is in preparation for the conversion of queue_pages_required() to queue_folio_required() and migrate_page_add() to migrate_folio_add(). Signed-off-by: Vishal Moola (Oracle) --- mm/mempolicy.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/mm/mempolicy.c b/mm/mempolicy.c index ae9d16124f45..0b82f8159541 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -558,7 +558,7 @@ static int queue_folios_pte_range(pmd_t *pmd, unsigned long addr, return addr != end ? -EIO : 0; } -static int queue_pages_hugetlb(pte_t *pte, unsigned long hmask, +static int queue_folios_hugetlb(pte_t *pte, unsigned long hmask, unsigned long addr, unsigned long end, struct mm_walk *walk) { @@ -566,7 +566,7 @@ static int queue_pages_hugetlb(pte_t *pte, unsigned long hmask, #ifdef CONFIG_HUGETLB_PAGE struct queue_pages *qp = walk->private; unsigned long flags = (qp->flags & MPOL_MF_VALID); - struct page *page; + struct folio *folio; spinlock_t *ptl; pte_t entry; @@ -574,13 +574,13 @@ static int queue_pages_hugetlb(pte_t *pte, unsigned long hmask, entry = huge_ptep_get(pte); if (!pte_present(entry)) goto unlock; - page = pte_page(entry); - if (!queue_pages_required(page, qp)) + folio = pfn_folio(pte_pfn(entry)); + if (!queue_pages_required(&folio->page, qp)) goto unlock; if (flags == MPOL_MF_STRICT) { /* - * STRICT alone means only detecting misplaced page and no + * STRICT alone means only detecting misplaced folio and no * need to further check other vma. */ ret = -EIO; @@ -591,7 +591,7 @@ static int queue_pages_hugetlb(pte_t *pte, unsigned long hmask, /* * Must be STRICT with MOVE*, otherwise .test_walk() have * stopped walking current vma. - * Detecting misplaced page but allow migrating pages which + * Detecting misplaced folio but allow migrating folios which * have been queued. */ ret = 1; @@ -600,11 +600,11 @@ static int queue_pages_hugetlb(pte_t *pte, unsigned long hmask, /* With MPOL_MF_MOVE, we migrate only unshared hugepage. */ if (flags & (MPOL_MF_MOVE_ALL) || - (flags & MPOL_MF_MOVE && page_mapcount(page) == 1)) { - if (isolate_hugetlb(page_folio(page), qp->pagelist) && + (flags & MPOL_MF_MOVE && folio_mapcount(folio) == 1)) { + if (isolate_hugetlb(folio, qp->pagelist) && (flags & MPOL_MF_STRICT)) /* - * Failed to isolate page but allow migrating pages + * Failed to isolate folio but allow migrating folios * which have been queued. */ ret = 1; @@ -702,7 +702,7 @@ static int queue_pages_test_walk(unsigned long start, unsigned long end, } static const struct mm_walk_ops queue_pages_walk_ops = { - .hugetlb_entry = queue_pages_hugetlb, + .hugetlb_entry = queue_folios_hugetlb, .pmd_entry = queue_folios_pte_range, .test_walk = queue_pages_test_walk, }; From patchwork Wed Jan 18 23:22:18 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vishal Moola X-Patchwork-Id: 45535 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp29425wrn; Wed, 18 Jan 2023 15:25:27 -0800 (PST) X-Google-Smtp-Source: AMrXdXs+iN7Q36Pl26D+7nLv8mL4OoKwR/GYHCAXlx9dNQr8iuJwNZTuoftB3Q7NP7sT91y/2MkF X-Received: by 2002:aa7:956c:0:b0:58d:9be3:f5e5 with SMTP id x12-20020aa7956c000000b0058d9be3f5e5mr9481915pfq.25.1674084327490; Wed, 18 Jan 2023 15:25:27 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674084327; cv=none; d=google.com; s=arc-20160816; b=eYHsVshRuC2W9ZTDs6iuje3+O0DBbPetULfhxsfYfoTPwWNLPjeiokya3kLDcr4uuE T3aZJ4Cbht8X/XgnsFkQ21lyJ7LqY8R4HAQNdJI+K/q247SLH2tJs+RMTcvO4G1E8mNV +kIxSuZ71irBebleB2/1ertrevU9qWS12ktgZFztLUbKI9TZV+XjsORd0ddGp8UMBeeD ThMI2EAWA9/Iw043VtC4/k0moV7CY1R+501ALIGQcc2SQXZGohpg6KW5YGiFySIqUaBC WzSLxzLeNX4fb+uF66bK2diC5bBcy+2/J+MDCLu8WsX/VbMeg+XK6mIxePqJF5EXWBQh MNVQ== 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 :dkim-signature; bh=au6G63hab9343OwjwQffrlqu0KPUTVvJhczlUez6ZjA=; b=JxoSSY8NS5U285lEjd1tkqgixu4BD//s4qf3gy+UjpiPMgmQ3A9mgT6mUost83O/l6 2WeZftWtmtb2OicO42c1jk8S1R0lC/ET6lCh/fvs91sT9zRqXm50K9DSerc2Z48FDm+n YXX4FNlWPu0lUlT4ZYRASRT31wwkacGhLgmzeLrHHk6yRyX01TUUEeTXLGVClrSKr8DO kK6jktAaBlI3fZ3L2H81/bgSLjVCaVzyVnBDa5KuPzo/9YXpD/c7Iq4ygZ6uPEWiEz6Y umN/6IvcqGAaugrGbhGetEPZTIeHLikpcUM3DdL00EUdcAUS0ok+TSOFrpufE8eFINPC 6efg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=OpFvnNuB; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id cp8-20020a056a00348800b00585eb18f290si21185509pfb.57.2023.01.18.15.25.15; Wed, 18 Jan 2023 15:25:27 -0800 (PST) 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; dkim=pass header.i=@gmail.com header.s=20210112 header.b=OpFvnNuB; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229906AbjARXWk (ORCPT + 99 others); Wed, 18 Jan 2023 18:22:40 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36592 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229878AbjARXW1 (ORCPT ); Wed, 18 Jan 2023 18:22:27 -0500 Received: from mail-pj1-x1036.google.com (mail-pj1-x1036.google.com [IPv6:2607:f8b0:4864:20::1036]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E3B0A66F96 for ; Wed, 18 Jan 2023 15:22:26 -0800 (PST) Received: by mail-pj1-x1036.google.com with SMTP id d8so631981pjc.3 for ; Wed, 18 Jan 2023 15:22:26 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=au6G63hab9343OwjwQffrlqu0KPUTVvJhczlUez6ZjA=; b=OpFvnNuBiURxuCLUuAX8gclebbcqS8tU6zG6zpK3Jg1ecyC6h3uLBzssNc1S9jHDHd 1KSwYCTy5G+mPdu5exzax5tjqlvSskyGaPQSz2bLj5cGgUwau+nGTJtUhKx3c49NjoQy 6GUqiA5ZMVqONluZBos2f4nk1GfO3iyRvN2BF6x2yt/bmDXB0HwztZcRcSZyiOq5rUtD hKmIpBI6UMGAta00Do7k5jjp5fbulHwkyARQBQXZlvhSh89iQcmRKh/lII9hc2hT7cQH YLp5ofBrxBLqctMsPDWQSaIABWdHl3KtCfopPF77zlY8V5mGSpD2ZgaD5AduVb1iIvjd tM+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=au6G63hab9343OwjwQffrlqu0KPUTVvJhczlUez6ZjA=; b=Z98ga1MkStuGHSvEAup333ZeZHP9WpcIg+Job+TdOAevd7UVbNTS9+RiLGw4KJFRNU 9KSO+nHRzZWJ50LL91O66rY/R+8YrdKUFlWgus9I9kUbTEgaSaEp39zYeVmB8P+9rWl3 XYFF91jTfRncpUZOdGAgPzhoi2LJ6EgWLrCKl3lnC7xUcNKStRBhQfopxCK41svnI9jX pl31/QO2HKFkpzJW2e7BtuffSQEnyPSR8tWoYnkqYQsIrG7MfG/v5sW/2oAgkawN1VXl BlHtVlUq4vkzeV8iFkwYVgA3mrPuLZ20+xHDTtL5qbYKyS71NwnFNVCzQnrzyZMKlVXt NfIw== X-Gm-Message-State: AFqh2krvKTVMSBN68Bdm7EsbXFV4TNruYJCDGw1XdzofMY2hRYeFTzDS arnTqmtVTQgy8e6oq63Vg/Y= X-Received: by 2002:a17:90a:e647:b0:229:5b13:d850 with SMTP id ep7-20020a17090ae64700b002295b13d850mr8776893pjb.5.1674084146362; Wed, 18 Jan 2023 15:22:26 -0800 (PST) Received: from fedora.hsd1.ca.comcast.net ([2601:644:8002:1c20::4e4b]) by smtp.googlemail.com with ESMTPSA id k1-20020a17090a7f0100b00223f495dc28sm1862265pjl.14.2023.01.18.15.22.25 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Jan 2023 15:22:26 -0800 (PST) From: "Vishal Moola (Oracle)" To: linux-mm@kvack.org Cc: akpm@linux-foundation.org, linux-kernel@vger.kernel.org, "Vishal Moola (Oracle)" Subject: [PATCH mm-unstable 4/5] mm/mempolicy: Convert queue_pages_required() to queue_folio_required() Date: Wed, 18 Jan 2023 15:22:18 -0800 Message-Id: <20230118232219.27038-5-vishal.moola@gmail.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230118232219.27038-1-vishal.moola@gmail.com> References: <20230118232219.27038-1-vishal.moola@gmail.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS 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 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1755404648243126197?= X-GMAIL-MSGID: =?utf-8?q?1755404648243126197?= Replace queue_pages_required() with queue_folio_required(). queue_folio_required() does the same as queue_pages_required(), except takes in a folio instead of a page. Signed-off-by: Vishal Moola (Oracle) --- mm/mempolicy.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/mm/mempolicy.c b/mm/mempolicy.c index 0b82f8159541..0a3690ecab7d 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -427,15 +427,15 @@ struct queue_pages { }; /* - * Check if the page's nid is in qp->nmask. + * Check if the folio's nid is in qp->nmask. * * If MPOL_MF_INVERT is set in qp->flags, check if the nid is * in the invert of qp->nmask. */ -static inline bool queue_pages_required(struct page *page, +static inline bool queue_folio_required(struct folio *folio, struct queue_pages *qp) { - int nid = page_to_nid(page); + int nid = folio_nid(folio); unsigned long flags = qp->flags; return node_isset(nid, *qp->nmask) == !(flags & MPOL_MF_INVERT); @@ -469,7 +469,7 @@ static int queue_folios_pmd(pmd_t *pmd, spinlock_t *ptl, unsigned long addr, walk->action = ACTION_CONTINUE; goto unlock; } - if (!queue_pages_required(&folio->page, qp)) + if (!queue_folio_required(folio, qp)) goto unlock; flags = qp->flags; @@ -530,7 +530,7 @@ static int queue_folios_pte_range(pmd_t *pmd, unsigned long addr, */ if (folio_test_reserved(folio)) continue; - if (!queue_pages_required(&folio->page, qp)) + if (!queue_folio_required(folio, qp)) continue; if (flags & (MPOL_MF_MOVE | MPOL_MF_MOVE_ALL)) { /* MPOL_MF_STRICT must be specified if we get here */ @@ -575,7 +575,7 @@ static int queue_folios_hugetlb(pte_t *pte, unsigned long hmask, if (!pte_present(entry)) goto unlock; folio = pfn_folio(pte_pfn(entry)); - if (!queue_pages_required(&folio->page, qp)) + if (!queue_folio_required(folio, qp)) goto unlock; if (flags == MPOL_MF_STRICT) { From patchwork Wed Jan 18 23:22:19 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Vishal Moola X-Patchwork-Id: 45536 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:adf:eb09:0:0:0:0:0 with SMTP id s9csp29628wrn; Wed, 18 Jan 2023 15:25:59 -0800 (PST) X-Google-Smtp-Source: AMrXdXsRLfy2JAKEwsmMqRxQ3X7y89JKTj/HGSJWPKgc7wrZfF8hMv3h9Xkfi7kjoNIFytD7zIH/ X-Received: by 2002:a05:6a20:a5a3:b0:ad:f2bf:bc50 with SMTP id bc35-20020a056a20a5a300b000adf2bfbc50mr9142012pzb.13.1674084359499; Wed, 18 Jan 2023 15:25:59 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1674084359; cv=none; d=google.com; s=arc-20160816; b=qx/JCS4kXL9xLDyhxt3iDfGcghE17BmA06XhKG3TMut+GsV0cPDMvB7OKIKo+rooRX 7bJqSjdYRMH0oZ6UY0tAHpeX1aqnhnPcL7NxJu4xaX6gIfBXkc79feNTIudK6MrEkBgr U9PoFI01Dqen32L0FZ2iRmjEE/bGE4D0nIBYSRdrnCcTTckuZ8Ldrlv/pWtL/Ufirjqf Dx1zMUjvL6uxEHQ4WSifVWObNZ9Y1BkYZijRFLn8oEoe7WLZj3d64XRxnzzvquYy09vX bJ6J3pDsG6nnfTkzdHENAnKfUYIaxX8eFOXlyZXU0SGwYUKzyM6COrNA9vT59OMky8aL x5GQ== 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 :dkim-signature; bh=AyaiUqa6uxGoekyzThZMenGPL9hncRzPR7deDY3LNSw=; b=Po8M0X5vWjzlRz4KhdYYakyPlPXgqCIL8wLm6XeQFiq38hUZ6sjbem6BfvBxepE00S Z7VUJzNJHk5KBBdopxE469tJjGKHz/3ewxnEFV6B5+XljE6kJVWLi6BX8JfLPCrc+afF 8Nf+9Vf0Fu2F+r3ul60oELuxkaKtx5kJvXJUVvrV8u3PYJb88+4qGBJXS6hI5kPgy7Tz F2JcU2m9VI4aGPxHn43ifm/BAkQVTCKkXzCMBCh/czbEy5qUYn9d/zUv5EGEiwVNHf+Z u8kk1HM2Jr/X+vbW1L9c1CwbfG7i84eHGD56t7lc9PiKjURsYLynWXqc976AtXDshxi/ aI+g== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=lR6rKoh2; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id q25-20020a637519000000b004cc3c59b5e7si4250996pgc.21.2023.01.18.15.25.47; Wed, 18 Jan 2023 15:25:59 -0800 (PST) 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; dkim=pass header.i=@gmail.com header.s=20210112 header.b=lR6rKoh2; 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=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229918AbjARXWo (ORCPT + 99 others); Wed, 18 Jan 2023 18:22:44 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:36594 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229884AbjARXW2 (ORCPT ); Wed, 18 Jan 2023 18:22:28 -0500 Received: from mail-pj1-x1033.google.com (mail-pj1-x1033.google.com [IPv6:2607:f8b0:4864:20::1033]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 27C5B676C4 for ; Wed, 18 Jan 2023 15:22:27 -0800 (PST) Received: by mail-pj1-x1033.google.com with SMTP id a14-20020a17090a70ce00b00229a2f73c56so4075129pjm.3 for ; Wed, 18 Jan 2023 15:22:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=AyaiUqa6uxGoekyzThZMenGPL9hncRzPR7deDY3LNSw=; b=lR6rKoh2RFGVgliV98r5mNThqsblkwbahtu0j3cOy5zj+Wzs0dviXjd2xpwYFy2b/s FygjQje2As8gfiTv9IpoYviItU5IfXF3C+GHMqEG1TIChBHPivgqi6vwtmYerHkKtLg7 Wor81yJRBNys/MDCgjcgoFKMBZc6oqepM5BPCSw5FKbe5xpLw6HtkAKD/ZCxElxGwXq/ E7IuAIb85nTgV+Zl0fknCajTg5E6lgdimAdfDfa1GyuBlO703HbOwVSZiZ1bBuRQaOo+ 40WaxHk5Ci8dNgUiqHOfu4PLfvBSxBin0LQbgice19D3oERHCz3XPGmgoPf+Xd0BQzLs xjcg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=AyaiUqa6uxGoekyzThZMenGPL9hncRzPR7deDY3LNSw=; b=hftufaGZ2C0efATgHYml/O6ezP+NlQ/s2e4bAD1IjV2Ni/jjUEw2yTdMCEhqArykK5 biax/SzzlijwBvjTzzGqEE7RgWzu4R4Yxgnvc4qrPgBY6G1GznpQZOHntFtkQdAn9Z2t 6A/yaFa31ELQmZ+nGEKPnjRsIkR9av2DvPdWx7cOzy//90CCHnFGM0PgidOsUTZKkcir +KvwrcYxmF0xWiSuL05e6OAFh2NFhfUr5WGBnJn3bd9EGdXCsmC6/yV03Wo/OCQ1eQZZ W0yX24acBPRJpnaDYykrA31BPA6ISP2InffGwm+ZXwZBkMb/fhS6wE8YwlY0Jn5RAyFU gASA== X-Gm-Message-State: AFqh2kqmKunRGccQQTtTRJ9lxgqsisvkeO7kbryqj+brMyS3QS8QMEUg 9aA83FrXVJzGoiALxb8st0uVY1F2KT4= X-Received: by 2002:a17:90a:ea86:b0:229:9369:e13 with SMTP id h6-20020a17090aea8600b0022993690e13mr8927376pjz.36.1674084147437; Wed, 18 Jan 2023 15:22:27 -0800 (PST) Received: from fedora.hsd1.ca.comcast.net ([2601:644:8002:1c20::4e4b]) by smtp.googlemail.com with ESMTPSA id k1-20020a17090a7f0100b00223f495dc28sm1862265pjl.14.2023.01.18.15.22.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 18 Jan 2023 15:22:27 -0800 (PST) From: "Vishal Moola (Oracle)" To: linux-mm@kvack.org Cc: akpm@linux-foundation.org, linux-kernel@vger.kernel.org, "Vishal Moola (Oracle)" Subject: [PATCH mm-unstable 5/5] mm/mempolicy: Convert migrate_page_add() to migrate_folio_add() Date: Wed, 18 Jan 2023 15:22:19 -0800 Message-Id: <20230118232219.27038-6-vishal.moola@gmail.com> X-Mailer: git-send-email 2.38.1 In-Reply-To: <20230118232219.27038-1-vishal.moola@gmail.com> References: <20230118232219.27038-1-vishal.moola@gmail.com> MIME-Version: 1.0 X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS 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 X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1755404681169694206?= X-GMAIL-MSGID: =?utf-8?q?1755404681169694206?= Replace migrate_page_add() with migrate_folio_add(). migrate_folio_add() does the same a migrate_page_add() but takes in a folio instead of a page. This removes a couple of calls to compound_head(). Signed-off-by: Vishal Moola (Oracle) --- mm/mempolicy.c | 34 +++++++++++++++------------------- 1 file changed, 15 insertions(+), 19 deletions(-) diff --git a/mm/mempolicy.c b/mm/mempolicy.c index 0a3690ecab7d..253ce368cf16 100644 --- a/mm/mempolicy.c +++ b/mm/mempolicy.c @@ -414,7 +414,7 @@ static const struct mempolicy_operations mpol_ops[MPOL_MAX] = { }, }; -static int migrate_page_add(struct page *page, struct list_head *pagelist, +static int migrate_folio_add(struct folio *folio, struct list_head *foliolist, unsigned long flags); struct queue_pages { @@ -476,7 +476,7 @@ static int queue_folios_pmd(pmd_t *pmd, spinlock_t *ptl, unsigned long addr, /* go to folio migration */ if (flags & (MPOL_MF_MOVE | MPOL_MF_MOVE_ALL)) { if (!vma_migratable(walk->vma) || - migrate_page_add(&folio->page, qp->pagelist, flags)) { + migrate_folio_add(folio, qp->pagelist, flags)) { ret = 1; goto unlock; } @@ -544,7 +544,7 @@ static int queue_folios_pte_range(pmd_t *pmd, unsigned long addr, * temporary off LRU pages in the range. Still * need migrate other LRU pages. */ - if (migrate_page_add(&folio->page, qp->pagelist, flags)) + if (migrate_folio_add(folio, qp->pagelist, flags)) has_unmovable = true; } else break; @@ -1022,27 +1022,23 @@ static long do_get_mempolicy(int *policy, nodemask_t *nmask, } #ifdef CONFIG_MIGRATION -/* - * page migration, thp tail pages can be passed. - */ -static int migrate_page_add(struct page *page, struct list_head *pagelist, +static int migrate_folio_add(struct folio *folio, struct list_head *foliolist, unsigned long flags) { - struct page *head = compound_head(page); /* - * Avoid migrating a page that is shared with others. + * Avoid migrating a folio that is shared with others. */ - if ((flags & MPOL_MF_MOVE_ALL) || page_mapcount(head) == 1) { - if (!isolate_lru_page(head)) { - list_add_tail(&head->lru, pagelist); - mod_node_page_state(page_pgdat(head), - NR_ISOLATED_ANON + page_is_file_lru(head), - thp_nr_pages(head)); + if ((flags & MPOL_MF_MOVE_ALL) || folio_mapcount(folio) == 1) { + if (!folio_isolate_lru(folio)) { + list_add_tail(&folio->lru, foliolist); + node_stat_mod_folio(folio, + NR_ISOLATED_ANON + folio_is_file_lru(folio), + folio_nr_pages(folio)); } else if (flags & MPOL_MF_STRICT) { /* - * Non-movable page may reach here. And, there may be - * temporary off LRU pages or non-LRU movable pages. - * Treat them as unmovable pages since they can't be + * Non-movable folio may reach here. And, there may be + * temporary off LRU folios or non-LRU movable folios. + * Treat them as unmovable folios since they can't be * isolated, so they can't be moved at the moment. It * should return -EIO for this case too. */ @@ -1234,7 +1230,7 @@ static struct page *new_page(struct page *page, unsigned long start) } #else -static int migrate_page_add(struct page *page, struct list_head *pagelist, +static int migrate_folio_add(struct folio *folio, struct list_head *foliolist, unsigned long flags) { return -EIO;