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 ED308C433EF for ; Fri, 15 Jul 2022 09:23:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4C36E9401DC; Fri, 15 Jul 2022 05:23:12 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 472389401A5; Fri, 15 Jul 2022 05:23:12 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 33B2F9401DC; Fri, 15 Jul 2022 05:23:12 -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 2339E9401A5 for ; Fri, 15 Jul 2022 05:23:12 -0400 (EDT) Received: from smtpin30.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay13.hostedemail.com (Postfix) with ESMTP id E34FA602C2 for ; Fri, 15 Jul 2022 09:23:11 +0000 (UTC) X-FDA: 79688795382.30.F05952D Received: from mail-wm1-f51.google.com (mail-wm1-f51.google.com [209.85.128.51]) by imf21.hostedemail.com (Postfix) with ESMTP id 7E0E61C008B for ; Fri, 15 Jul 2022 09:23:10 +0000 (UTC) Received: by mail-wm1-f51.google.com with SMTP id p4so2481324wms.0 for ; Fri, 15 Jul 2022 02:23:10 -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:in-reply-to:references:user-agent:date :message-id:mime-version; bh=TD4qyCc2/sj7H2ZxOu63AnfBrd6X3bmHJua9yUIs4LE=; b=IOdQtUmzYtMIGdBcmR6YH4RTXqeuv1jnKhGuBLoH3LaqCbrVfundg54tIGrIMTYixv 1IQHYKENaJTmi1M8SD3lZsTpuBJRl6oC5YIl4biet5e4pc3S+NyTa6jNnTcgkNInC0Ni EWXLHr6QYRmB6NRO8DOyI538nAi5/98etXrXVN55tYd+PqeBKco5DqXRlnMNfQGeEk/Y clYXCnfIufKZZf0JmdhIDgwkcVwwrIM2b/iPYrtkG0b3AnfO1dbZam0mVh4FAq/qvglY MbSefbBwrU4chpClZqTrDMwRJUmaIdVlhqbU97C0OylOTT659Vi0kHLPkEoghvPkWiFm XIeQ== 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:in-reply-to:references :user-agent:date:message-id:mime-version; bh=TD4qyCc2/sj7H2ZxOu63AnfBrd6X3bmHJua9yUIs4LE=; b=wJ7WRu7XbnMWR31vR6aYRc4Ws+8egN7lqrgMqt2sEcKLEmREtpMDGuO2dX5QRDysRo msNVt602BlBOr6gbvlyxXMDj54UbSMLxKoJdGTRcCt7ypOBTTJIQEF1PiSS1lmDzcf5x JTLZC9zquhbQlrSL/JOmDDSFAq02OA9DokVHgLE/aij07zS+psoAH+BA5NgmAbD3kQ6g TeX/6Ia0t/sqFEwGGX2KJLIIvWBvS7wbjPiHFIYMUdGKUdP3FEZHzji8sZvWzcb+GTPu H/RjGRIaSWMDiBrhvsLTFqOoMgdCUznRcd8gK59A23MdISv5iBpwZLmCIZzIr0Eq5m65 3JCg== X-Gm-Message-State: AJIora/d4trnwOfeHT1PRd2b8eE41sMgsjhRe2ZQByZtnaLPexP7Clck NJ6g18uNCS3Fd8J2iCiTPoKQiw== X-Google-Smtp-Source: AGRyM1uZDO5RdEZUnigND+aq38xqzwRHQH2N+0pWWuc1pZ7vtok2+eITyUYFneksMuwlfv3KLBue+g== X-Received: by 2002:a05:600c:3510:b0:3a0:f957:116e with SMTP id h16-20020a05600c351000b003a0f957116emr13028177wmq.179.1657876989101; Fri, 15 Jul 2022 02:23:09 -0700 (PDT) Received: from localhost ([109.180.234.208]) by smtp.gmail.com with ESMTPSA id n66-20020a1ca445000000b003a02de5de80sm8181569wme.4.2022.07.15.02.23.07 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 15 Jul 2022 02:23:08 -0700 (PDT) From: Punit Agrawal To: William Lam Cc: Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH] mm: compaction: include compound page count for scanning in pageblock isolation In-Reply-To: <20220711202806.22296-1-william.lam@bytedance.com> (William Lam's message of "Mon, 11 Jul 2022 21:28:06 +0100") References: <20220711202806.22296-1-william.lam@bytedance.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) Date: Fri, 15 Jul 2022 10:23:07 +0100 Message-ID: <874jzin30k.fsf@stealth> MIME-Version: 1.0 Content-Type: text/plain ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1657876991; a=rsa-sha256; cv=none; b=4BsKk94NpjagIsmsEGcW1kHj5aM6DALXfYC/52ijF0rMpyXgtInpOYfKYDaC9yrjjh6noZ spyIFCFc9Mdr3SYLT/rklFLUaH7d0X4mJVluXSSl4RzQ/PwfThyP+cTi6+CEygAIDrBVp7 LTzDMTdAg1Cz7Bn6w+9utQE1+UOHmUo= ARC-Authentication-Results: i=1; imf21.hostedemail.com; dkim=pass header.d=bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b=IOdQtUmz; dmarc=pass (policy=none) header.from=bytedance.com; spf=pass (imf21.hostedemail.com: domain of punit.agrawal@bytedance.com designates 209.85.128.51 as permitted sender) smtp.mailfrom=punit.agrawal@bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1657876991; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=TD4qyCc2/sj7H2ZxOu63AnfBrd6X3bmHJua9yUIs4LE=; b=kWfA37chQ1aHx9EVa5FRjTL2FfoqeGJP3JmUp9nntKLVeI4fUmhakKHTvzYG73xOy+T4Za 83uvfXuA2Ibdz21C4EdsSaCV+FiSt3usBIz2hcZnPbfmc0rnfdeXyBmZZkjplZMX9/VbHp oo45j3pHw9nECQmwcGESQ6Hqc88+8HU= X-Stat-Signature: ndj67nrdyrtgstnn9pe8ko5arf5hae63 X-Rspam-User: X-Rspamd-Queue-Id: 7E0E61C008B Authentication-Results: imf21.hostedemail.com; dkim=pass header.d=bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b=IOdQtUmz; dmarc=pass (policy=none) header.from=bytedance.com; spf=pass (imf21.hostedemail.com: domain of punit.agrawal@bytedance.com designates 209.85.128.51 as permitted sender) smtp.mailfrom=punit.agrawal@bytedance.com X-Rspamd-Server: rspam11 X-HE-Tag: 1657876990-836111 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: Hi William, William Lam writes: > 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. A minor suggestion - It maybe useful to include an example trace output to highlight the issue. > > 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); Regardless of the comment above - Reviewed-by: Punit Agrawal