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 47C96C28B2F for ; Thu, 13 Mar 2025 02:34:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 42CA2280002; Wed, 12 Mar 2025 22:34:53 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3DA4B280001; Wed, 12 Mar 2025 22:34:53 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2A11D280002; Wed, 12 Mar 2025 22:34:53 -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 0D517280001 for ; Wed, 12 Mar 2025 22:34:53 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id BC805121939 for ; Thu, 13 Mar 2025 02:34:54 +0000 (UTC) X-FDA: 83214960108.18.D85E5C4 Received: from mail-lf1-f54.google.com (mail-lf1-f54.google.com [209.85.167.54]) by imf23.hostedemail.com (Postfix) with ESMTP id C0C1C14000B for ; Thu, 13 Mar 2025 02:34:52 +0000 (UTC) Authentication-Results: imf23.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=Re19DHMT; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf23.hostedemail.com: domain of hezhongkun.hzk@bytedance.com designates 209.85.167.54 as permitted sender) smtp.mailfrom=hezhongkun.hzk@bytedance.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1741833292; a=rsa-sha256; cv=none; b=K2b8MAM/ctQUWVmQx/rsqfdeVq0V4q3cMP6Y5N5gjrP88L4hNHGlcpZmRn2zPwdxUCyljF A29/5CYo//6o8J/tIxR2dBKGJzBRIoSuaoWsvdG35CO83ZsFq4E8CEEJNu8GZifmBXZoJH Cmee0UuKRirWfb612ByWpjtOkm9FgIA= ARC-Authentication-Results: i=1; imf23.hostedemail.com; dkim=pass header.d=bytedance.com header.s=google header.b=Re19DHMT; dmarc=pass (policy=quarantine) header.from=bytedance.com; spf=pass (imf23.hostedemail.com: domain of hezhongkun.hzk@bytedance.com designates 209.85.167.54 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=1741833292; 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=I2lWoV8i4ySgFrJZjxYJ8GBvKJVFQLrhl9RtpcESuXQ=; b=1PARR86UTBbSt6g5q2sj0cZuhXOt4QQ4jAvzEVleU5NHnjPD/tArkucd0XW9YR5N8tjHoV VrCC08VNw3/gTIa/WQZlncHnXiPSiSYP/r0tr9Yx914X38wRBMuZz/sXzncGpm2le1E34t L0sEDmvGDarwR6a+q/SZ5NBK357xavM= Received: by mail-lf1-f54.google.com with SMTP id 2adb3069b0e04-54298ec925bso746735e87.3 for ; Wed, 12 Mar 2025 19:34:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1741833291; x=1742438091; 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=I2lWoV8i4ySgFrJZjxYJ8GBvKJVFQLrhl9RtpcESuXQ=; b=Re19DHMTN3nsUPnSnCzbi7f2DixEZa43c56Xdqv8aoVRSDhz0BEC70FwabPUIm0QNl R42kqatxNT+luVGtokYR9B0f9kHXScXCPQCkjJEnBFoC8zxgj/ARdsHCVOmIHoNo1ifS toedyblZzB4S6NG6fSxCW8j1Do83dQzjt6WkRvoj3i7H/It25Yj1PPnt54TUyeRjjI4a h5ynUa27r4/ySIi217ltdzfHvEUnIvtb/KVbNEHAx2lQRbuknr7VvsvQmxtHYYwquuve gT2sMUymhNnq86VDKP3ZaFoHwvZnC1zZmoxdPnCWWCY0Th9IVvE+HYTshilk4LfgIfGb 2ftA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1741833291; x=1742438091; 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=I2lWoV8i4ySgFrJZjxYJ8GBvKJVFQLrhl9RtpcESuXQ=; b=L881sGGN3AKsMx5UeeJ+AUJAKWhNx4M2gguTbZ9SD5BBiaUXB+tG2+rI5VinY+BQBY 3LCv2KPt4MgokKjdORxg4KfQrR5Wxru3OIfPPfqQhTUyZfPRY4PjxttujJnf2AHQTaJD mCIs1t8RSgDIeGCwSMci8Vux2GwhwttwWzNRWIAySxPcuqvMBRsz4dEGVnw3CQ3VLW7P 4zKz2omVXjAl1BvZs80TpQhbx38CvHVMfhpXmUjIbALBxvKKCcJfgwgnA8Enh4QuWKvz G7BMxWZtuggvupRN+y5ohmNQbk1KkZm+oPmgvyJfxUzt4bDRb3rLWSzdZEaBKNyPsQmN V+Nw== X-Forwarded-Encrypted: i=1; AJvYcCWZ8oqkeKDk5fjUNYWwBs12p3yNH3WpW1ZcungqmTSfpTRLK9pG3mnZne9WdldqhCBkAYRFpVlBTg==@kvack.org X-Gm-Message-State: AOJu0YyNI3BaQE+FMsrsUWE5ir2qPNJ9fLh4pIe1R0gW66e1nPPEI+Sp fxZ5re1PLRQAMXj2f6JkLN/DwxrppeF7RXgi/3daOlgOVsZVo92MpXVWfNFuNkhWPqGTysmif6a ft/Ie8zbHg/CnBRl96E/mhNSsR5cboYiomCfy6lbNlNQf80lcZ+g/kA== X-Gm-Gg: ASbGncsInnEgtv04YjEx7Bq+rBfE2vcciOT1XcYHz23g/j/I1zg040387roh+i9O1eu 07MusOFTyIyXi2eWZdR6RlQq8cmnAOQdjTCvP+bqnhOHyY2sTBHQmPWE5kODI8QF2h6ZNZWbd0c /XS+rlBdbMFj0vpnK1+MaExbSzJKQASPHGcYcQCbs= X-Google-Smtp-Source: AGHT+IGhB76RN1O+q5C6fe5CB4RZKPiYRWzRPZix7PQmmX4uczGObf9EXqG1kng/iYd/vMbcD40pL1GdJ8VeQ4iqTYM= X-Received: by 2002:a05:6512:3988:b0:545:2e76:495c with SMTP id 2adb3069b0e04-54990e6729dmr6403463e87.25.1741833291074; Wed, 12 Mar 2025 19:34:51 -0700 (PDT) MIME-Version: 1.0 References: <20250312094337.2296278-1-hezhongkun.hzk@bytedance.com> <20250312231656.GB1247787@cmpxchg.org> In-Reply-To: <20250312231656.GB1247787@cmpxchg.org> From: Zhongkun He Date: Thu, 13 Mar 2025 10:34:39 +0800 X-Gm-Features: AQ5f1JoIE96AepnT_CfSpaYDLGW-cX102Hapm8Ns6cVuOUM34YGI5cwK3TL8zcM Message-ID: Subject: Re: [External] Re: [PATCH] mm: vmscan: skip the file folios in proactive reclaim if swappiness is MAX To: Johannes Weiner Cc: akpm@linux-foundation.org, mhocko@suse.com, 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-Queue-Id: C0C1C14000B X-Stat-Signature: zdajd1tq3muwc7spu49nw49kdaui9jwz X-Rspamd-Server: rspam06 X-HE-Tag: 1741833292-949092 X-HE-Meta: U2FsdGVkX1/7pr0ioYEoO/fzFLmSLLxb4gdzBhKIQCBGF1JEJG1Z6sQy7f3cBgSaIsRCbMCc6uCrDRLjJw22LJd4zQJSLRwn2H2e9EGAws3Ljg1zhY/sJxepX0lPu5EFsUT+Itsm+9wI9s9noXcmb5ZlTi7XKlUA890S4Vecvb90h+pL6BB2Ecmi9L/VrLvKieWEORwCGyvas76FGGAEuq1CxwLhSzm6nVMUqKTNkKr98GNh0qgJtyR09Ubvp44HmZCCtZ5a20ydhqAIUctIk7fSpH0ufgPdcZ3NmFiHCGUg7nGP4TQRXe/3KpYyabRMnoG0Fub0+9Xl20ygaKDoT7KinSf9nQUaAN/O2b3l1TZdQ+cqwj/zViPXPgaOp/8JK7ReFZTmZmkAdhLC0iGu79J2aIdG2bYqucNYlzw5LZlAGuvj7gN+n18/Rhpa5cn3jqq/cZWia/S9DtT92++h+AC9KzhZzOP+yTOKf2pJXlrnpkkBmho3BKQ/of5bwIv6tBMBwJIwSVXxOcTOXhbrGWz9QYWQGkp7FfB+Gg2TWStSCgTVGjzVWUgbSf22R41j7mkzAicRmlQMIKcdfL3tXs8mWQo/82iwEVm+H+T+iMICh96A6p61ExgthNOtkf6uLlSFzFTP8p0b3kUxUlkWDoJttouF74rkaOjXHIhGjAS6CQysIuWilQRPvjaD5Vd3+1MC1Eh5TyIgM84UPbeXebXk/JTRPxjMDYS05+2ZZcR//qcsgrvAnxMIsl7on6/dNAB5oOijqs87vxPzlMG9PscrgqD0prl0BcCwIcP2e74pMG8EjTXFBtGDAtz6h2gOy+fPT9YTUkWUfIvbQ6IblAvPspEEJoJmIgd2NPaBRVoQW2Y8e0PGgSASTfk1fJsL+nfFLz9241Ql8yNIGJqDTEP9WQBiMRjotKC6BoXArEll2ZxpkUDAgPJvD3YHHGu2hX40Ttg0eUZwdDz5HKw FG4DZyb+ E9w0bXEgHYpNRtLglG2ALV0wfIi2/dENPVEnSAxNbCIJQm6kaRiCHWqVmA3h6STCWBAuB/IlQJ77oTD1/cHTA71nD9zAFxlvNpyjS04RDzWzG0rTGgSNvnwHRSdtzLlkNXEQnZT5rp1z2on+83z//CYhyEAFfCgBTcxWUBG0UeU16KTXqxBX/7+m/FMsKIXfaeML6Bo1VqQBvMx8XThJUeh3HIAo/7yB5vqJWWvOE3hvikl5wYRYDTNgNXcznoEFJNnApNSciQRVnNZDHm51Zv14UPTKECFHk4NTS 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 Thu, Mar 13, 2025 at 7:17=E2=80=AFAM Johannes Weiner 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. > > I'm not opposed but can you be a bit more specific on your usecase? > > Presumably this is with zram/zswap, where the IO tradeoff that > cache_trim_mode is making doesn't hold - file refaults will cause IO, > whereas anon decompression will not. Indeed, I will add this description in the comments. > > > 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 > > Makes sense to me. With the doc update Andrew had asked for, > > Acked-by: Johannes Weiner Got it, thanks.