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 C7CC8C43334 for ; Mon, 11 Jul 2022 20:28:55 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3A7886B0104; Mon, 11 Jul 2022 16:28:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 358C16B0105; Mon, 11 Jul 2022 16:28:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 220856B0106; Mon, 11 Jul 2022 16:28:55 -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 14D9A6B0104 for ; Mon, 11 Jul 2022 16:28:55 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id DC0B1336A1 for ; Mon, 11 Jul 2022 20:28:54 +0000 (UTC) X-FDA: 79675957788.21.D21948C Received: from mail-wm1-f47.google.com (mail-wm1-f47.google.com [209.85.128.47]) by imf16.hostedemail.com (Postfix) with ESMTP id E3013180066 for ; Mon, 11 Jul 2022 20:28:52 +0000 (UTC) Received: by mail-wm1-f47.google.com with SMTP id ay25so3646861wmb.1 for ; Mon, 11 Jul 2022 13:28:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance-com.20210112.gappssmtp.com; s=20210112; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=3FYWLbFVIQR/VTDlKfK3KSN2+LTj7T2uVBiUoRPvBIo=; b=N/SQpLi6+icPZLn38OToJuJjCZR+Upi3JsxZ2N2fCXyc8dfg12m+8g7Ys174O5H7Jh GOXRoYGxEcz0x7Ui6aOjYeilzoDYvBeoMPnX87jF/YZRVQ5bw+Qrbn3W9JLivCrej9kW U1/3tInIy4og8FAU/J+Ph8UxBXkdYhnlIp+VPclte0hCgYPPlJtdE6HL+fAhg4yZwl3w Eu+wvIjKo+wgRD3ouhuPrW8sQRKwqTeli1pbmoF2xVqObsbXPOYC669Wsoq+dLFGjfIv czFhba+KEK61c/DyBmXZzkn6jrkp5aEMHYImO/B9N/y7klgZB9KoJID5K0bPxHgh2TWn D/wg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=3FYWLbFVIQR/VTDlKfK3KSN2+LTj7T2uVBiUoRPvBIo=; b=zZSh9g1ZaQ0S1PxYfthjltnZ3GzB015Pr3hO5c6haOkCpXzRJ7fGIbTpzvB0fzNk8L VM4BDhaLmkXQfH/mgB0wEP7T30YY+GxQZxqu7LdBL6kEeDh2MUB/2Qh05IXr5G03BnE7 BI3oHeFWgJFRvLxghC7HpX8HM5m7NyTEstUqS6luA5yrCNNLFoIQArN1STlIXTgTB1yx pcxedY7GgZf9WVNtnyqDPkVPA9wfgBstdDAZcPlXYweAwZkckWJw1BUY+0A2z+lmE+O/ JPj+pfm+b6lk+XZP6069G5eikHq1Wy8q+3FbnalJ5PlPZpXR2YpaSHnTnuX924DCg2Ec EJiA== X-Gm-Message-State: AJIora/uoU6nn/3Ls7PkNJugcNEHq3Hk6fFnh4xMvApLlgfFssoeC2lU tTTbkznqlY1SS/5FkC/m683otg== X-Google-Smtp-Source: AGRyM1s/eAWJhE/CU/qLO+2sCXi61cTuiVovpFhSRnn6bA2/Ysn59YVIPeib9CFMCdlaIHjnRIVhsw== X-Received: by 2002:a05:600c:6004:b0:3a0:41db:aae with SMTP id az4-20020a05600c600400b003a041db0aaemr123120wmb.171.1657571331361; Mon, 11 Jul 2022 13:28:51 -0700 (PDT) Received: from C02FT09GML7L.mynet ([2a01:4b00:87fe:f600:ac48:7ee1:86bb:5471]) by smtp.gmail.com with ESMTPSA id u3-20020a5d6da3000000b0021d66cf9547sm8269159wrs.0.2022.07.11.13.28.49 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 11 Jul 2022 13:28:50 -0700 (PDT) From: William Lam To: Cc: William Lam , Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: [PATCH] mm: compaction: include compound page count for scanning in pageblock isolation Date: Mon, 11 Jul 2022 21:28:06 +0100 Message-Id: <20220711202806.22296-1-william.lam@bytedance.com> X-Mailer: git-send-email 2.30.1 (Apple Git-130) MIME-Version: 1.0 Content-Transfer-Encoding: 8bit ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1657571334; a=rsa-sha256; cv=none; b=LhsZEQiLJs7Fs1kGqMwpxyyTHJ17SX7zKZFvveK1/YBXJxr0utj2r+b8V5O12nrzlBH0/1 +bCX6ZW8jMvRk0RtUv5CC6P5mXaB4DzomHN9CfkxOqMpSLWXRuvtZ/wSAfaUwFhbcRVxJO RZ+uH/dNRFlChFFzsr1gR9mORALu82M= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b="N/SQpLi6"; dmarc=pass (policy=none) header.from=bytedance.com; spf=pass (imf16.hostedemail.com: domain of william.lam@bytedance.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=william.lam@bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1657571334; 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:references:dkim-signature; bh=3FYWLbFVIQR/VTDlKfK3KSN2+LTj7T2uVBiUoRPvBIo=; b=qzqXAzH9qiu5ImWy7I6HKgzZN8Dtrw8zBsXEcMgr5oh0uuL3AHx6aQFaBIqPkaIfHZAllO xRGdm4LX73vMgvR19swINaFFMBLtw7rREodEUdYtVZNgIsZrWefXwTCnoiW+bgiauMFQ94 kknq4ph9HdtcVC+8ib0UDCO06URHNK0= Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b="N/SQpLi6"; dmarc=pass (policy=none) header.from=bytedance.com; spf=pass (imf16.hostedemail.com: domain of william.lam@bytedance.com designates 209.85.128.47 as permitted sender) smtp.mailfrom=william.lam@bytedance.com X-Stat-Signature: buo14c5qk3ghw3h1js337ezid5i763ok X-Rspamd-Queue-Id: E3013180066 X-Rspam-User: X-Rspamd-Server: rspam11 X-HE-Tag: 1657571332-578978 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000185, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: The number of scanned pages can be lower than the number of isolated pages when isolating mirgratable or free pageblock. The metric is being reported in trace event and also used in vmstat. This behaviour is confusing since currently the count for isolated pages takes account of compound page but not for the case of scanned pages. And given that the number of isolated pages(nr_taken) reported in mm_compaction_isolate_template trace event is on a single-page basis, the ambiguity when reporting the number of scanned pages can be removed by also including compound page count. Signed-off-by: William Lam --- mm/compaction.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/mm/compaction.c b/mm/compaction.c index 1f89b969c12b..1b51cf2d32b6 100644 --- a/mm/compaction.c +++ b/mm/compaction.c @@ -616,6 +616,7 @@ static unsigned long isolate_freepages_block(struct compact_control *cc, break; set_page_private(page, order); + nr_scanned += isolated - 1; total_isolated += isolated; cc->nr_freepages += isolated; list_add_tail(&page->lru, freelist); @@ -1101,6 +1102,7 @@ isolate_migratepages_block(struct compact_control *cc, unsigned long low_pfn, isolate_success_no_list: cc->nr_migratepages += compound_nr(page); nr_isolated += compound_nr(page); + nr_scanned += compound_nr(page) - 1; /* * Avoid isolating too much unless this block is being @@ -1504,6 +1506,7 @@ fast_isolate_freepages(struct compact_control *cc) if (__isolate_free_page(page, order)) { set_page_private(page, order); nr_isolated = 1 << order; + nr_scanned += nr_isolated - 1; cc->nr_freepages += nr_isolated; list_add_tail(&page->lru, &cc->freepages); count_compact_events(COMPACTISOLATED, nr_isolated); -- 2.30.1 (Apple Git-130)