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 E543CCCF9F3 for ; Wed, 6 Sep 2023 00:53:19 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 16089900015; Tue, 5 Sep 2023 20:53:19 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 10F508E0014; Tue, 5 Sep 2023 20:53:19 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id F18DB900015; Tue, 5 Sep 2023 20:53:18 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id DFB338E0014 for ; Tue, 5 Sep 2023 20:53:18 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id A8993120B10 for ; Wed, 6 Sep 2023 00:53:18 +0000 (UTC) X-FDA: 81204348876.18.FE3C413 Received: from mail-pl1-f172.google.com (mail-pl1-f172.google.com [209.85.214.172]) by imf14.hostedemail.com (Postfix) with ESMTP id D1312100036 for ; Wed, 6 Sep 2023 00:53:16 +0000 (UTC) Authentication-Results: imf14.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=QaHb3rbK; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf14.hostedemail.com: domain of bsingharora@gmail.com designates 209.85.214.172 as permitted sender) smtp.mailfrom=bsingharora@gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1693961596; a=rsa-sha256; cv=none; b=2MlL/fpmoYUiv9RAIvKaszEPw4sUBr8Y/TJ7JmvISHxC1Qssman7P37XfM/rT7NiEvHnQd mZgXe/uuy44eTKuUpW9xbK0v/d3XkPUs1U8LPwxV81BvB65ddDf0otg09Sb8eM8nkhwh+L 7tRkP+X9Y1SZPeO+41kcMaFqftSOYSY= ARC-Authentication-Results: i=1; imf14.hostedemail.com; dkim=pass header.d=gmail.com header.s=20221208 header.b=QaHb3rbK; dmarc=pass (policy=none) header.from=gmail.com; spf=pass (imf14.hostedemail.com: domain of bsingharora@gmail.com designates 209.85.214.172 as permitted sender) smtp.mailfrom=bsingharora@gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1693961596; 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=wNbJ8Xh/lpTcyZ6zob7yaBq8XspnWgOm5MTNQgKj8PE=; b=ZYCIzvpa0D6mJyAP44FWd9kAzdxnhFE5XMXah7lpTRFP5SYQGKlbgx1nPQ07FxX+iNYim3 o+hXTAuoen4zfrYnJNEqEeah49IkUDRLxCuvrHpbvHwr/hVJwJnJ5tDtGVCZVne6XDaV80 z9ylNFE6l5vnmFL1VIw/yaNsDrTQNCs= Received: by mail-pl1-f172.google.com with SMTP id d9443c01a7336-1c1ff5b741cso24445685ad.2 for ; Tue, 05 Sep 2023 17:53:16 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1693961595; x=1694566395; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to; bh=wNbJ8Xh/lpTcyZ6zob7yaBq8XspnWgOm5MTNQgKj8PE=; b=QaHb3rbKQvnIX35KzSclS5t48+tYvPFp71l9faNBm0g1P1/ttBxe2GUQaThp4wV9AZ MGSL2wHDYkuYLSfzs7QEDN1O/aUjcMlmffdarSnlfvym+t1RnUDlWfB7kxN2pYm1e2iB kOrdi5QFgLeIy1sbfpvw9epsToz43cSK7NYUr/bWYvOLvF2Gp6BvxprzmfluCsfK2GqJ gfR3kaGqDMdm5iXWkzJ4dbVra3tyrLIvJr0tp2kIDBqiK59ehvq4MaciQKeRvUQZa0qU VzecrNxmJUMnDkSXzp3caTws8qDVjWf04xqcQ7i2krhfHAwHpDg2PT16hU0wHdUD9oNc eHgQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1693961595; x=1694566395; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=wNbJ8Xh/lpTcyZ6zob7yaBq8XspnWgOm5MTNQgKj8PE=; b=lcQnkNXkxErXcC2TeiiEiDbnSPGl9J8Hu72sG2MHYmtHZQmh4uBL+SjnAgOtRDIB8L OeLXaJx4EtTZ1wv38kcbZLx6CMVHM8NLJpf1W5h+Rra8+Ly12ki7lkxub3kmrIc1VnJB udZs7GSP8GMiR6Zrt4MRpvNaREN7EPIKYdROXNZlsRGHN+p+F61gZgD9L7A716Ek6+Sy ZoUFuCEq6g7YFZDDCrZvCf1JToCCg8TEMDv2GhBPY5R4nAtGEfmTvNM/xyC7yeoESkcd tsBdMFIwVmdWL961PjYT4TT21s3SHqcNr0WiHbeFYeKBx+UynzNjgyO6gY3k5RYxo5i5 VM9w== X-Gm-Message-State: AOJu0Ywcz0N4K+jdjhCnZz/W9Zo1UU6rFR4Zfr61MgWdmIqA/na/Iois MadFqVWrpT7COUAwM40YtBo= X-Google-Smtp-Source: AGHT+IE9iPqXykM2fiujUN63wC5KgY/EHFhkgqRFRrGmzyWt8LBow1u/GcVms3ZWN4URFmyD5Sz8NA== X-Received: by 2002:a17:903:249:b0:1a9:b8c3:c2c2 with SMTP id j9-20020a170903024900b001a9b8c3c2c2mr18721337plh.37.1693961595476; Tue, 05 Sep 2023 17:53:15 -0700 (PDT) Received: from localhost (42.122.96.58.static.exetel.com.au. [58.96.122.42]) by smtp.gmail.com with ESMTPSA id c6-20020a170902c1c600b001bdd68b3f4bsm9888214plc.295.2023.09.05.17.53.14 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 05 Sep 2023 17:53:14 -0700 (PDT) From: Education Directorate X-Google-Original-From: Education Directorate Date: Wed, 6 Sep 2023 10:53:11 +1000 To: "liwenyu01@bilibili.com" Cc: "akpm@linux-foundation.org" , "linux-mm@kvack.org" , "linux-kernel@vger.kernel.org" , "wangyun@bilibili.com" Subject: Re: [PATCH RFC] delayacct: add memory reclaim delay in get_page_from_freelist Message-ID: References: <20230902164454.30dda58820ced683849b45cb@linux-foundation.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: D1312100036 X-Stat-Signature: tqco3jrerkc7juqm6uytonkr1cjieofz X-HE-Tag: 1693961596-921169 X-HE-Meta: U2FsdGVkX19hst7Q+GvcvctiuWDeU39XQLM3/z+H+7zmGngl+oKE2N7H1FBOXH9F3KDO3ZCxx8kHCKwWi/BLKyqOPXgOJxiUQpPSX5SR4wVsTsTUU4K2tX1AA5GZrHyjB6g8ebayLyCFiw5RxCMsH6R6xIFkaQu9G1d3xwvqeEjlxGR04ECOKsVl3XSm3CeM1zDiJqkE6UeM7sEW9+2XFR+4q3+dM8ns+K0uNu3JeHYCW+gkpt0zeZk252nuEuICOPYjvhAKlUbu8KwH5GcaTomJkx5ZJ1xBspYldf4kySoXcT3fIzBGMOyk11wsejzMLM/PXZtPUYb/ZRaiAuY2GuKHkRP83JXcLtBNBELFO6zcM49UKCu4vBPMV3a0mvq3grpJVXE078h/LS/mkyA2sqTbQCh46vzVN26XUcnnyDEpER1TClyBLedPwjl1sbc4Hwnt0Vnx4BegplveD23apSG+hQYhNdNTqjBunx86kM+Dls8ntnfaFv+ROrQWyKoPV64hqV8MoXecO1sA82Sp+IsaKzEgxg30ye0BR2mEYVg1Q6VofXObfLhoj9DqgXJT2ui4feFHqpf6Wumk+vjFMaVJB37lV11P6cvOAAUlYvPhQV+cGtntQOCTcOgx6WcPz1LXn/2b7NzImVQxVH9JNvSt/NcjP6BEOkF0C5/xSC9kmAnZlwZVJLoXeCPGMcBQP3vuuqs7xWSquNR4tuJ3144/odIYQJG96V0Fnalgo7flcxoOF9j+dV7KTwKDqtx6m08yTKWyCkx6B+dNXnra8ceLVqXUjQbR6Ycb513yuSQ34Vn5KWdKLMNW9ZF8i09+Ri0TfSJd+bqnzE8lCbletWhOwZsSTU6X6RZALEXQcJeUgmeCRm46PcXC5b07Y5E2P+jBuGZe60g2d8n5B7Va9Ig4ecM3iZDY2W0BRpFXiIeh7pZ2tP2MYtHOn3R5as0pwsgh3gqghuSEC3AxNdO 49f42/CZ 3uSnnn6nx/RnBY+IMsOJGa3EvoElFUvFZgrbWUrf0lQxbCHx+/fCB/MDG+s3mXY+EXolYYrJcQ3qAtmv91qdO68z3W60k4bO7NN5kmXFacBVmM6ymSfebDiSUUndQnQ+kQZex+455NMBujtRzMoe1w/CU84hfUleKe1Fan9LjZkDlOQKnFW8T7y8/eh9MFoBjk+C6mnNh2tUuI47kkQHcLPkLL8dPLIZI5tHazMflvBGZ67VPIqCrc5cXUugFva5xfFZqLsVNrwOBYBbakoyjMTg9mBN9h3PH4+dc9CUWfgOIBNkR2sR6fttDtZv6i3cwRjDW8ITaSKPJ+s3vEEZF0XVC7RgPkQ6CeiRk1W7/9zjJOHDNvYXXU9oAHbpKp3qCO4l1W6jU29XtgrurUJNuXArL5RMR2/0QdjeihpKibKBtVdtEQYG4MFhTzggO+x1F1KhI6ZI9IHWoufGTYte1eQgBsWN5nBw1FG6PKxZi0maYxKJuLEAZQ11xukmEEwFnDc/L 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: On Tue, Sep 05, 2023 at 05:32:15AM +0000, liwenyu01@bilibili.com wrote: > >> reclaim of the task in do_try_to_free_pages(). In systems with NUMA > >> open, some tasks occasionally experience slower response times, but the > >> total count of reclaim does not increase, using ftrace can show that > >> node_reclaim has occurred. > >> > >> The memory reclaim occurring in get_page_from_freelist() is also due to > >> heavy memory load. To get the impact of tasks in memory reclaim, this > >> patch adds the statistics of the memory reclaim delay statistics for > >> __node_reclaim(). > >> > >> ... > >> > >> --- a/mm/vmscan.c > >> +++ b/mm/vmscan.c > >> @@ -8010,6 +8010,7 @@ static int __node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask, unsigned in > >> > >> cond_resched(); > >> psi_memstall_enter(&pflags); > >> + delayacct_freepages_start(); > >> fs_reclaim_acquire(sc.gfp_mask); > >> /* > >> * We need to be able to allocate from the reserves for RECLAIM_UNMAP > >> @@ -8032,6 +8033,7 @@ static int __node_reclaim(struct pglist_data *pgdat, gfp_t gfp_mask, unsigned in > >> memalloc_noreclaim_restore(noreclaim_flag); > >> fs_reclaim_release(sc.gfp_mask); > >> psi_memstall_leave(&pflags); > >> + delayacct_freepages_end(); > >> > >> trace_mm_vmscan_node_reclaim_end(sc.nr_reclaimed); > > > > __node_reclaim() calls shrink_node() which at some point will call > > do_try_to_free_pages() (yes?), which calls delayacct_freepages_start(). > > > > So we're effectively nesting calls to delayacct_freepages_start(), > > which isn't designed for that? > > > sorry, the last reply was a mistake. > > It seems that no point in shrink_node() will call do_try_to_free_pages(). > And do_try_to_free_pages() will call shrink_node() through shrink_zones(), > if shrink_node() also has some point will call do_try_to_free_pages,then > delayacct_freepages_start() is nested now? That's because shrink_node() goes through shrink_list() via shrink_lruvec()? do_try_to_free_pages() will call shrink_node(). Ideally we should have some counters around __node_reclaim() and balance_pgdat() like psi_memstall_* does. Do you want to mimic what psi_memstall_* does? This would change the definition of delayacct free pages, but I don't think it will make it worse. Balbir Singh