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 7B1A5C282DE for ; Fri, 14 Mar 2025 02:21:06 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4FB38280002; Thu, 13 Mar 2025 22:21:05 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4848A280001; Thu, 13 Mar 2025 22:21:05 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 30009280002; Thu, 13 Mar 2025 22:21:05 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 0DD39280001 for ; Thu, 13 Mar 2025 22:21:05 -0400 (EDT) Received: from smtpin25.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 0A430160888 for ; Fri, 14 Mar 2025 02:21:05 +0000 (UTC) X-FDA: 83218554090.25.9A0347C Received: from mail-lf1-f46.google.com (mail-lf1-f46.google.com [209.85.167.46]) by imf08.hostedemail.com (Postfix) with ESMTP id 2E291160008 for ; Fri, 14 Mar 2025 02:21:01 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=KAFIo6Du; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf08.hostedemail.com: domain of hezhongkun.hzk@bytedance.com designates 209.85.167.46 as permitted sender) smtp.mailfrom=hezhongkun.hzk@bytedance.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1741918863; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=JhvEgULRCeABMBBVLY/qi5SSG7BfaBYoCdPiyeDpY/s=; b=O5VuBqsH0dr70GcbFJ2W0QI1U2oECmiWh/gvhGdxDXYT1bZa/gNxc5H5fl7H6NC57oiSzm D9Lr+e5Ksu5cHJyTix41KQf8Lj8CQe178m55vnIsljrvtr8cl6R3NSrozzRrBgvqo2CyCw ERFFzp4uzyNLAZAqSOrFkDTWelHl0EU= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741918863; a=rsa-sha256; cv=none; b=M8K1WYkCz/4LKZ2IGfxgMmVIoWiLy9YHPWtTlWmloZXLx7cuUhOf0LciArr2jukwv3Rzg3 tTwxXbJTWgVm0tIEc/iKBUWf0dQee03YP6FvxyBqxJ2+oL2RdH0UmPggF73G5BBBt57PsS ofPTnVqGZvQcYwLmPJS7G9ZhAFwMvR8= ARC-Authentication-Results: i=1; imf08.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=KAFIo6Du; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf08.hostedemail.com: domain of hezhongkun.hzk@bytedance.com designates 209.85.167.46 as permitted sender) smtp.mailfrom=hezhongkun.hzk@bytedance.com Received: by mail-lf1-f46.google.com with SMTP id 2adb3069b0e04-5499d2134e8so2005940e87.0 for ; Thu, 13 Mar 2025 19:21:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1741918860; x=1742523660; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=JhvEgULRCeABMBBVLY/qi5SSG7BfaBYoCdPiyeDpY/s=; b=KAFIo6DuPnFnfifIIxi+Na+NqxNkwIvfoXKB20GTJqE/YZzyoLD6t49boi0pheB2LO 0BD9CkBjqYWRS18WsTKafKj0BtaT69V0i3dn54SImx75W92FVvhW7ImKS+2JEsIH3tru qM/bBm/X6lvEAlPPuTk5gUdxR5jvTFr4sP8u6RLc+5z6EHtSX7NduF6hpOIa1sp3Vv45 lKYGTtfFb5RA3VJxbBwUPrff2V+4wtb1iRd7M97oOwyYJSylXtUZnunSmx71YZ3FxlPx nYV88BvZpzByoQ7c6iSnyRQpSYGcyMQb87VSLIPv9boKwfiiJBGqrllZmSs2GBpRcdWo vy+w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741918860; x=1742523660; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JhvEgULRCeABMBBVLY/qi5SSG7BfaBYoCdPiyeDpY/s=; b=KQVdcEL2H88kC2BJxK1Kb3oY4W4ev8rLrPA4L4ZU3i3JRc3T94VWQ8nbBqChI5/bsT eaVLgQ1spI3Q3X4jU2CHmNcYIC1gaJuXflzP4fdpKV8AfEKcQyS8nBx5PfEXtXhdbCVu BeOZH7qhr/e5bZgdVEdrfnYslvhIeqQfC7F7IhYGhCzgQb7GH7MZ5CSqlAU7Kp7ewBBa 3lkRyY+8PO2lpHNJSX1OLLMtF9G9Butr/tHtdjRnp74mleSNYAd2JNdstZ4LCvoavV2S 88Kc7RASP2yiBSrd/0t/IXxwuhu1OoMsgA4IH2JdFMfZojDk0I1eP2oyIPr1rwunfTV1 al1Q== X-Forwarded-Encrypted: i=1; AJvYcCWG2zw8f4lm2P5XxDRz5P5MyWQHPXXPKHhtO02xXIaSX0aJ2H3QRfVkI//QoiDovdIwBsiOB6WgmQ==@kvack.org X-Gm-Message-State: AOJu0YwBF7ak042XQl9UhwJPuTD99qCAGKLzK6dXps95go8BGwp0CmQP pXGPOuC5z2EcSZyFaiKasSX12mjZE4Iu4r3Hzta1RrqrjfIxg76BG2SZ9OxbYt6pAnn42vYwK+E 5I6N7TWQ3MdGWCScvWCgDxZ7EhPAZVfU0z3dbkbKqSmn+p8aa0zdQdA== X-Gm-Gg: ASbGnctLpxaAMm9Awz8WPx6bOhv8w8i8wkwCJWSLHyF0ybXybCemeNfn0uee6/0EuqG xl0KiVH1opjdssH+fiMOir5Xq1CWyFFnKl9EQXaoYcpnkrrYkUNw8wa6o3yjjRpzOUDKTIr1v6p quS1TOnKgNuPl3ds0SRPTdY8/i8dQv+ZjUGuCV7CF8 X-Google-Smtp-Source: AGHT+IEQU3O4OvJAPMBVbp+9v3wiBt3lm6Z3gqLTilJ9zNqtvYkgmwPglVyR3QyNU8ynw0ua8c8Xt/QXuPoDakLUlUs= X-Received: by 2002:a05:6512:234f:b0:545:3dd:aa69 with SMTP id 2adb3069b0e04-549c3969f3bmr221089e87.36.1741918859813; Thu, 13 Mar 2025 19:20:59 -0700 (PDT) MIME-Version: 1.0 References: <20250312094337.2296278-1-hezhongkun.hzk@bytedance.com> In-Reply-To: From: Zhongkun He Date: Fri, 14 Mar 2025 10:20:23 +0800 X-Gm-Features: AQ5f1JrqaVlfn6VtonAFOuMAO3DY1FI2fmUUcsILkYntOGv_rkxwA5SUOWwgiiY Message-ID: Subject: Re: [External] Re: [PATCH] mm: vmscan: skip the file folios in proactive reclaim if swappiness is MAX To: Yosry Ahmed Cc: akpm@linux-foundation.org, mhocko@suse.com, hannes@cmpxchg.org, muchun.song@linux.dev, linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 2E291160008 X-Stat-Signature: 4h371rhyfhoh5xedm9cuyxo88dotxwdx X-HE-Tag: 1741918861-247114 X-HE-Meta: U2FsdGVkX1/TEtdM7nSaTuNf94qX+azpJ//P1M/9Y50c3gjWZS2WmwyzLeGvQpe21ZcpJRCIp8Pf84sxkxVTrJTsmyq1IjSJpSvMbkLsnWqInuSGStRRs3flfX7UE/TKZw4wydUZB1Mp2s7tetspS3Y+APGcipEwl9iVo0ExI6igaJdHFMMpEko3ZfSHJMvaDkhlIwa0DaGytHmAId+MEBVS7a58NCMhBDEIPqczwdZsPMJkTRkfcz7qRJPw5ydII3HT7nz9itt3Oboz+vBsZKI1vXP9R5a5Mn9n12wvYK0P50VBXeR2/DHkCfJd72r6FC76L/06r+z87u0iWnoV/TDGBTMaayxf30snUBOZ1BIYTq6qU/2Hf6P2sDOMA1pSVMrDpMRu/x3Ge+bYe3cRSbuwyhRTwKObHsPBz1eQtIzTZ7XbxY7w9qoD737St1uaCcq1YN/IEr2sC+wWN6Zd1TnRaOlBe+G3o1MMwBlJyhv7b6me5Ddy0ie5zYU5Ln2bHp5mXE5bHbnxtzYyRxI0gyBmt46R/AZs2SH2JKgO7mELNZ8xhC35yXHn+exz+V1zcSnomVqDeIdEMKfmn57PHQy62M9BKBItWv84tRVj6oB1ZM7he6PLu84dbCimO5BSAOFP2oTQb6zlzODqDVgIMYCE6DjXm9IxbvNpTD+tYgU7fhV+xbh4WP94c4ap3LwzmG90IfBe1qh9+Rnfj/ISz2r6Clblf6xHC9LCePIzACJWKwTTwzjG5xJkax1aHj/a4/wVTv/YivdiKXP/9q1rKHIvBqpMfsFNDLHAKAA2AT56nwbctWNvtbSkKA0QNBnXwRc+SabpmrFfJOO/J8spdkSMn6jUqLtykr+ig0bIXLrCjQo7x5nS+yU0ap9a7Iolsgpd9HA+//T1PG94rOg/0wmqi9lBysnVpwuRuVTPPxCfGyGfBPutA8fXNTCWuHCW2iTLA4GtusHzLpei5cq u06v7cQp KDj+V4nDYtjU5ek0KUQN3DeeIjOncEGsaCrghQxklq/73REOlDCbV35m+WnB6HC3kjCS2JovsXtfYaArrQAQx8yI6AvS+44YaLjZ0VBOvVhGRCaG7JmH5be1Bx81FRahnms/gtmI/PZdD+wnAnBcGhtF5i/VC7H/QP85tan+t+uKj9KbsdgYtp48rnh/CwjtXziEXzrxjaP8YOQs5aVMJzuiVrVSNBVmITRSqToO7C7ryIYhyU7g80BeC3DwKJ8XAArMLXjbymCnL/vg= 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: List-Subscribe: List-Unsubscribe: On Fri, Mar 14, 2025 at 8:17=E2=80=AFAM Yosry Ahmed = wrote: > > On Wed, Mar 12, 2025 at 05:43:37PM +0800, Zhongkun He wrote: > > With this patch 'commit <68cd9050d871> ("mm: add swappiness=3D arg to > > memory.reclaim")', we can submit an additional swappiness=3D argum= ent > > to memory.reclaim. It is very useful because we can dynamically adjust > > the reclamation ratio based on the anonymous folios and file folios of > > each cgroup. For example,when swappiness is set to 0, we only reclaim > > from file pages. > > > > However,we have also encountered a new issue: when swappiness is set to > > the MAX_SWAPPINESS, it may still only reclaim file folios. This is due > > to the knob of cache_trim_mode, which depends solely on the ratio of > > inactive folios, regardless of whether there are a large number of cold > > folios in anonymous folio list. > > > > So, we hope to add a new control logic where proactive memory reclaim o= nly > > reclaims from anonymous folios when swappiness is set to MAX_SWAPPINESS= . > > For example, something like this: > > > > echo "2M swappiness=3D200" > /sys/fs/cgroup/memory.reclaim > > > > will perform reclaim on the rootcg with a swappiness setting of 200 (ma= x > > swappiness) regardless of the file folios. Users have a more comprehens= ive > > view of the application's memory distribution because there are many > > metrics available. > > > > With this patch, the swappiness argument of memory.reclaim has a more > > precise semantics: 0 means reclaiming only from file pages, while 200 > > means reclaiming just from anonymous pages. > > > > Signed-off-by: Zhongkun He > > Reviewed-by: Yosry Ahmed Thanks for your time, Yosry. > > > --- > > mm/vmscan.c | 10 ++++++++++ > > 1 file changed, 10 insertions(+) > > > > diff --git a/mm/vmscan.c b/mm/vmscan.c > > index c767d71c43d7..f4312b41e0e0 100644 > > --- a/mm/vmscan.c > > +++ b/mm/vmscan.c > > @@ -2438,6 +2438,16 @@ static void get_scan_count(struct lruvec *lruvec= , struct scan_control *sc, > > goto out; > > } > > > > + /* > > + * Do not bother scanning file folios if the memory reclaim > > + * invoked by userspace through memory.reclaim and the > > + * swappiness is MAX_SWAPPINESS. > > + */ > > + if (sc->proactive && (swappiness =3D=3D MAX_SWAPPINESS)) { > > + scan_balance =3D SCAN_ANON; > > + goto out; > > + } > > + > > /* > > * Do not apply any pressure balancing cleverness when the > > * system is close to OOM, scan both anon and file equally > > -- > > 2.39.5 > > > >