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 X-Spam-Level: X-Spam-Status: No, score=-6.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 847FAC388F9 for ; Wed, 28 Oct 2020 01:25:45 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id EC8392225C for ; Wed, 28 Oct 2020 01:25:44 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org EC8392225C Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id 1718C6B005C; Tue, 27 Oct 2020 21:25:44 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 0FB856B005D; Tue, 27 Oct 2020 21:25:44 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F04706B0062; Tue, 27 Oct 2020 21:25:43 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0241.hostedemail.com [216.40.44.241]) by kanga.kvack.org (Postfix) with ESMTP id C026B6B005C for ; Tue, 27 Oct 2020 21:25:43 -0400 (EDT) Received: from smtpin28.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with ESMTP id 4CAF81EE6 for ; Wed, 28 Oct 2020 01:25:43 +0000 (UTC) X-FDA: 77419592166.28.hat09_3c0393527280 Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin28.hostedemail.com (Postfix) with ESMTP id 31C756C29 for ; Wed, 28 Oct 2020 01:25:43 +0000 (UTC) X-HE-Tag: hat09_3c0393527280 X-Filterd-Recvd-Size: 6011 Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by imf05.hostedemail.com (Postfix) with ESMTP for ; Wed, 28 Oct 2020 01:25:41 +0000 (UTC) IronPort-SDR: i6ZJvl+F8qm+sTAEi3QIVfdaN/QxNnifczZctB3DtIulhue0urTxM1HgDi0DLaMhC3wj6I1kOB mbqYIDQrTc7Q== X-IronPort-AV: E=McAfee;i="6000,8403,9787"; a="168317279" X-IronPort-AV: E=Sophos;i="5.77,424,1596524400"; d="scan'208";a="168317279" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga102.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 27 Oct 2020 18:25:38 -0700 IronPort-SDR: 5hoEjGFE5g6xP+4Ka9QEPdrwWyrRaInkG5ajZHDBS802jDelVBqQmMJmNk+YicUhPvWC12jW1O hK+qHBE78RlA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.77,424,1596524400"; d="scan'208";a="334581823" Received: from yhuang-dev.sh.intel.com (HELO yhuang-dev) ([10.239.159.65]) by orsmga002.jf.intel.com with ESMTP; 27 Oct 2020 18:25:36 -0700 From: "Huang\, Ying" To: Yang Shi Cc: Dave Hansen , Linux Kernel Mailing List , Linux MM , Yang Shi , David Rientjes , Dan Williams , David Hildenbrand Subject: Re: [RFC][PATCH 6/9] mm/vmscan: add page demotion counter References: <20201007161736.ACC6E387@viggo.jf.intel.com> <20201007161747.FE7288F0@viggo.jf.intel.com> <87v9f6hdik.fsf@yhuang-dev.intel.com> Date: Wed, 28 Oct 2020 09:25:35 +0800 In-Reply-To: (Yang Shi's message of "Tue, 27 Oct 2020 09:41:27 -0700") Message-ID: <87ft5zywds.fsf@yhuang-dev.intel.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=ascii 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: Yang Shi writes: > On Mon, Oct 19, 2020 at 12:38 AM Huang, Ying wrote: >> >> Dave Hansen writes: >> >> > From: Yang Shi >> > >> > Account the number of demoted pages into reclaim_state->nr_demoted. >> >> It appears that you don't add "nr_demoted" into struct reclaim_state. >> >> > Add pgdemote_kswapd and pgdemote_direct VM counters showed in >> > /proc/vmstat. >> > >> > [ daveh: >> > - __count_vm_events() a bit, and made them look at the THP >> > size directly rather than getting data from migrate_pages() >> >> It appears that we get the data from migrate_pages() now. >> >> > ] >> > >> > Signed-off-by: Yang Shi >> > Signed-off-by: Dave Hansen >> > Cc: David Rientjes >> > Cc: Huang Ying >> > Cc: Dan Williams >> > Cc: David Hildenbrand >> > --- >> > >> > b/include/linux/vm_event_item.h | 2 ++ >> > b/mm/vmscan.c | 6 ++++++ >> > b/mm/vmstat.c | 2 ++ >> > 3 files changed, 10 insertions(+) >> > >> > diff -puN include/linux/vm_event_item.h~mm-vmscan-add-page-demotion-counter include/linux/vm_event_item.h >> > --- a/include/linux/vm_event_item.h~mm-vmscan-add-page-demotion-counter 2020-10-07 09:15:32.171642439 -0700 >> > +++ b/include/linux/vm_event_item.h 2020-10-07 09:15:32.179642439 -0700 >> > @@ -33,6 +33,8 @@ enum vm_event_item { PGPGIN, PGPGOUT, PS >> > PGREUSE, >> > PGSTEAL_KSWAPD, >> > PGSTEAL_DIRECT, >> > + PGDEMOTE_KSWAPD, >> > + PGDEMOTE_DIRECT, >> > PGSCAN_KSWAPD, >> > PGSCAN_DIRECT, >> > PGSCAN_DIRECT_THROTTLE, >> > diff -puN mm/vmscan.c~mm-vmscan-add-page-demotion-counter mm/vmscan.c >> > --- a/mm/vmscan.c~mm-vmscan-add-page-demotion-counter 2020-10-07 09:15:32.173642439 -0700 >> > +++ b/mm/vmscan.c 2020-10-07 09:15:32.180642439 -0700 >> > @@ -147,6 +147,7 @@ struct scan_control { >> > unsigned int immediate; >> > unsigned int file_taken; >> > unsigned int taken; >> > + unsigned int demoted; >> >> It appears that this newly added field isn't used in the patch. > > My original patch tracked nr_demoted in reclaim_stat as well, but it > seems Dave dropped that part. If Dave thinks it is not necessary to > keep tracking nr_demoted in reclaim_stat, then that field should be > dropped. Personally, I prefer to collect nr_demoted in struct reclaim_stat and call counting functions in shrink_inactive_list() as other reclaiming statistics. Best Regards, Huang, Ying >> >> > } nr; >> > >> > /* for recording the reclaimed slab by now */ >> > @@ -1134,6 +1135,11 @@ static unsigned int demote_page_list(str >> > target_nid, MIGRATE_ASYNC, MR_DEMOTION, >> > &nr_succeeded); >> > >> > + if (current_is_kswapd()) >> > + __count_vm_events(PGDEMOTE_KSWAPD, nr_succeeded); >> > + else >> > + __count_vm_events(PGDEMOTE_DIRECT, nr_succeeded); >> > + >> > return nr_succeeded; >> > } >> > >> > diff -puN mm/vmstat.c~mm-vmscan-add-page-demotion-counter mm/vmstat.c >> > --- a/mm/vmstat.c~mm-vmscan-add-page-demotion-counter 2020-10-07 09:15:32.175642439 -0700 >> > +++ b/mm/vmstat.c 2020-10-07 09:15:32.181642439 -0700 >> > @@ -1244,6 +1244,8 @@ const char * const vmstat_text[] = { >> > "pgreuse", >> > "pgsteal_kswapd", >> > "pgsteal_direct", >> > + "pgdemote_kswapd", >> > + "pgdemote_direct", >> > "pgscan_kswapd", >> > "pgscan_direct", >> > "pgscan_direct_throttle", >> > _ >> >> Best Regards, >> Huang, Ying >>