From patchwork Thu Feb 27 14:34:51 2025 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: ying chen X-Patchwork-Id: 13994679 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 31B12C1B0FF for ; Thu, 27 Feb 2025 14:35:09 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 82CFC6B007B; Thu, 27 Feb 2025 09:35:08 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 7DCC56B0082; Thu, 27 Feb 2025 09:35:08 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6CB446B0085; Thu, 27 Feb 2025 09:35:08 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 4D22A6B007B for ; Thu, 27 Feb 2025 09:35:08 -0500 (EST) Received: from smtpin13.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 8C46281D91 for ; Thu, 27 Feb 2025 14:35:07 +0000 (UTC) X-FDA: 83165971854.13.626585D Received: from mail-ed1-f68.google.com (mail-ed1-f68.google.com [209.85.208.68]) by imf29.hostedemail.com (Postfix) with ESMTP id 7879712001D for ; Thu, 27 Feb 2025 14:35:04 +0000 (UTC) Authentication-Results: imf29.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=XU1yFrB7; spf=pass (imf29.hostedemail.com: domain of yc1082463@gmail.com designates 209.85.208.68 as permitted sender) smtp.mailfrom=yc1082463@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740666904; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding:in-reply-to: references:dkim-signature; bh=ibqSO3DoiXQkj5z3DA6r5R4G3+A9Zbr0Rhh2VpYSgPI=; b=ALKhZ9OjXEYO0p0am+pTRDuMF+AbgjVYfFqzz08jlRK5DuzpbHjBJrjTg46Vw8xpQbFao7 K6lmx6fPSv6MenGWBeOm2eGRPTQVdlSYm2fdsFhiMnbkTM6lAsdbby+F9JuQ6nNp+z1TqZ 0ehvP3Eoutpx9FiFVxpXadifNDK3gyo= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740666904; a=rsa-sha256; cv=none; b=tZgMDoO3XEXSvgZCTGSH9GidVn6oRv3bqLYqqdKfKEbByghn9pQSHqBFwncjs1M365WXgK xyhymXdH3NwanevNl4oBqh5ZbcCeo0n4lu6uSg63cg1erDe2/LrTS/3XFHLBUNCFBRO8pU opsY0W38/icW94nx94vPy0T7VVPbPdI= ARC-Authentication-Results: i=1; imf29.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=XU1yFrB7; spf=pass (imf29.hostedemail.com: domain of yc1082463@gmail.com designates 209.85.208.68 as permitted sender) smtp.mailfrom=yc1082463@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-ed1-f68.google.com with SMTP id 4fb4d7f45d1cf-5e05780509dso1290665a12.2 for ; Thu, 27 Feb 2025 06:35:04 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1740666903; x=1741271703; darn=kvack.org; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=ibqSO3DoiXQkj5z3DA6r5R4G3+A9Zbr0Rhh2VpYSgPI=; b=XU1yFrB7gVMvhLuD4+wADGIySHHwa8F0dQT2hTwH7idEWrn/fFLop05R/cbnKfl/gq NUOYmo5wrGN03Gzma2/H19p/qSbr53M0w5M9NQ3/YhSZM6rSbqvJyE5Lc+ihgVGuP1M2 Epizn/pDxkH9OnbpHsy4hvb/7Q8BGtUf4Ov3DCZOrZ5vJgrunHhchmRXEy7LN1Qi1BDC BPnPXEMs1bRKxpbpGkiAGxiKQJFY+arqFZaH7N14hzNMUI6cCwTdlLmM7bPM2K1Q/jzb K1IiHs0ce+iriBaoDY9PV2jfEOzSj46W9050W61yQdifWnNJ//kxgZGTHLtIpmqfIwq8 gZsw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740666903; x=1741271703; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=ibqSO3DoiXQkj5z3DA6r5R4G3+A9Zbr0Rhh2VpYSgPI=; b=mmvupirv5/pJJg3qG737iEkb7/Lhy2hokS2+umFjdiTr19D6/AzmsGkoaJ5ss8jKSy wmpFLL6FaLHC18SvPWV9e46gKK7bIxZCSMHR2wpwmjSzlDzlkdv4MEI+rPTkmXlh5Eec T90h2bJe2mgcqwhGGy+X8J/n1zASdReaTRNOcOQq5MAVFW9V/aqdsbE+XWwNiacIKCq1 UZSTlZpQBZy1EimADK25SUQO+TlYhSq3NSN2eWNbhcuCgiJqE0nHbYolcLCkvj4/tNYh U4PdrIxwtkZIxQ07mHJvMMpDOpHSgbK6AfgssdiSB5QFDll9kmdEVOCe2jERRvw7ufam DdgA== X-Forwarded-Encrypted: i=1; AJvYcCUqWdxNvK8ugrTQPVWQdOH09qxSCS59bTEQHvNFGeaKWzE26k/xtKPH9HJeIhd8iMPY69jJM1hFWA==@kvack.org X-Gm-Message-State: AOJu0YxHRsAURTY1JhIHRwg1gZK0eV4m7s7CJLc20IWZSwdQV5upJ3/F qtsrctY4hLUiHEm8UNikpNMGT3eY+fMqiUiCvrARN5F38QxVtFRIBMDLsmtzs8C+IlT8yoKxoTA +R9zmBCw/El1gmphPNWVsOWK93kk= X-Gm-Gg: ASbGncvLllW2tF4P8QwOZhdUtXOIfmdcfmBvD/ARShWfeiH2rGdNId8LuL9BRrGKePC Olnr0EcCx/TY3q9M8+2gVtr44iQgL41n9Wt/KXgNXshYejf+9DU5UgwjQA1Z3PTi9MNhR20sR1D SrWkgfA5IH X-Google-Smtp-Source: AGHT+IHI4s1A0CHJ5Z4CV5rWWmbAagFbgom5CnpV8lpEVLqD7ySce7xQtbQxb4hLnJWn/p8cn9cGgdKTUJd5zkRUnts= X-Received: by 2002:a17:907:7710:b0:abb:9d27:290f with SMTP id a640c23a62f3a-abed0c66939mr1295588966b.9.1740666902326; Thu, 27 Feb 2025 06:35:02 -0800 (PST) MIME-Version: 1.0 From: ying chen Date: Thu, 27 Feb 2025 22:34:51 +0800 X-Gm-Features: AQ5f1Jqhp8MxfKCvUO5ejp43rCfqNhFZS_PCQafaVCX5mXCKqBeZW-CMLezrUkw Message-ID: Subject: [PATCH] mm/vmscan: when the swappiness is set to 0, memory swapping should be prohibited during the global reclaim process To: akpm@linux-foundation.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org X-Stat-Signature: thtu3qrmg941zgxs3iumqbporswdeteo X-Rspamd-Server: rspam01 X-Rspamd-Queue-Id: 7879712001D X-Rspam-User: X-HE-Tag: 1740666904-799731 X-HE-Meta: U2FsdGVkX19dnPR9Vh9eTvgcEMrykf++ZWMmIOKlnGQQBwwaldXH9xF/+neCXOdhj32MQD7xawvJqe7KpTJXA3L8l9PC/sO826Rxu3m4J8MAWPMv6QjpI7uCYHPVamMo5TS2jVY6AS3oXxQKoVDm+ex1Mp10SSV/daH0R4FiPDcCPLt4CReWCX7TJjfXGi+k3xKjEemzhGCsjvlhSE7w0m94zo3c71NiLA/60kz2bkF+LSNBki1HtxcY+yz/+mvjCBFNaaSFmGxfmhJD0Gumy0oC/Zid13llxsA1316lhg6H+o5DFkohAH3sMXBDCIDg23fKTUULGjQPhhlJWmvHhPzjft0fVTlRYjeWy7twIOwUuirZzEmZMUfz2RZ7OT65ISxn6pmY2TtDpKpLIWbLVECFbjcnCb3GIaPMRBT8IaXk8uZNa0Laii6HelE1qMOtB2XYx4yaiJLaUg3eVp9sbbv5lSCA4iC8aLtJYC1Ngf9uquRnhjOgr65NRGQWmCkoGmVSnS5S7n6dfd0bWVEXTXItpoBdyTZ/9eqeX/3vJXXJHpK5qJdYvSxOs3XirvHdArnMUS5+v+iWiyXzzCm0tLbYC1KPDceE9R2UFCnRt1mVSX9RgCB8RvXEznxFEcVP8x+pyGurd9juPcatdUMnI2sPfI8AsB4EtsnkMG9FjxcD91pzjeQHqUUsIOmHMBpWH4Qu8gFm1M9WA3o6bj2qKfcO2SAMhY+uCHRCckiqrpFsmjt9LITood0pFGAejBMQildLTYd4pGJQyb9UYpNNY7gnCfg7ELlbRf1WWfb0RMKH9HdxqQbvZ2KFkFodNKz/6n8MT1iSlEHUTRENi6CZu7dyPB0OoikyPwLh/pRGPU8jLKSGpdCGy4h8Oc8FWnuyd5tCeksOs+jrzAW/8fZpnZGV2Uqq6HI/dORtr8L9tm4h8J9FeSDeH/rDJuw8Cce876Prsl9dV9KuoOsIizI 5CsErytQ 2eLvaKq+6LS0kOmB1JjEfVK+ldizZm+r4qYMK/HncAwuGK9yvY/cH6Y5MJwDtnUXdFV1hBRwgwhRKp72hSouZEz6tMJVVJb7sfDwtgUby8emK37j0INEAmNfXPbMqYTxdnkyR1L1x5YND0u9mIdo5e+pyNYG4zecDMi1eFhHwfidTcQjhmEdLS5sIrJhzz34eAKHJnYhM/9oXChBhrjvAY9Z/IbZkt/OEZSWq1CQ1cPkndJzItA/6iP0hnYNj2lKbqn+7wDbJlxDBQ5UTYI6e+mjT7AHIrMvTPvwX9lfwyHsuSENfJ26NZozReVThVLZct3ZLV/kDWkQLYleIRduXxMXbnBkIChGx4Tt/iwfVpTtjSgW5o0+PT3/9Iw== X-Bogosity: Ham, tests=bogofilter, spamicity=0.063879, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: When we use zram as swap disks, global reclaim may cause the memory in some cgroups with memory.swappiness set to 0 to be swapped into zram. This memory won't be swapped back immediately after the free memory increases. Instead, it will continue to occupy the zram space, which may result in no available zram space for the cgroups with swapping enabled. Therefore, I think that when the vm.swappiness is set to 0, global reclaim should also refrain from memory swapping, just like these cgroups. Signed-off-by: yc1082463 Nacked-by: Johannes Weiner --- mm/vmscan.c | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) } -- 2.34.1 diff --git a/mm/vmscan.c b/mm/vmscan.c index c767d71c43d7..bdbb0fc03412 100644 --- a/mm/vmscan.c +++ b/mm/vmscan.c @@ -2426,14 +2426,7 @@ static void get_scan_count(struct lruvec *lruvec, struct scan_control *sc, goto out; } - /* - * Global reclaim will swap to prevent OOM even with no - * swappiness, but memcg users want to use this knob to - * disable swapping for individual groups completely when - * using the memory controller's swap limit feature would be - * too expensive. - */ - if (cgroup_reclaim(sc) && !swappiness) { + if (!swappiness) { scan_balance = SCAN_FILE; goto out;