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 704B1C35FFA for ; Wed, 19 Mar 2025 19:27:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 226F4280003; Wed, 19 Mar 2025 15:27:29 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 1D353280001; Wed, 19 Mar 2025 15:27:29 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 0C3D3280003; Wed, 19 Mar 2025 15:27:29 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id E3E7A280001 for ; Wed, 19 Mar 2025 15:27:28 -0400 (EDT) Received: from smtpin02.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id 77540C0441 for ; Wed, 19 Mar 2025 19:27:29 +0000 (UTC) X-FDA: 83239284618.02.43639C1 Received: from out-189.mta1.migadu.com (out-189.mta1.migadu.com [95.215.58.189]) by imf03.hostedemail.com (Postfix) with ESMTP id 9C44E20005 for ; Wed, 19 Mar 2025 19:27:27 +0000 (UTC) Authentication-Results: imf03.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=rmbagfGI; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf03.hostedemail.com: domain of shakeel.butt@linux.dev designates 95.215.58.189 as permitted sender) smtp.mailfrom=shakeel.butt@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1742412447; a=rsa-sha256; cv=none; b=SoWa3hw43wQsQuJJlDDaHoPJDCrVxqWsIfKMecly/G8miqf08U4B21982OCEoxjWYtvTD2 fGj4nCPR28jbQyp8DgnJYd33nm1OVoHdamfM2X7ef/dXZ0+8SgG8XEX59hL9Q2VRiULLTA XXFmAIolqPQ13R1ln1706LqNVdKSOAg= ARC-Authentication-Results: i=1; imf03.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=rmbagfGI; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf03.hostedemail.com: domain of shakeel.butt@linux.dev designates 95.215.58.189 as permitted sender) smtp.mailfrom=shakeel.butt@linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1742412447; 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=sZiap64g8PWqaP9A/RNcdWpawC9YJsZVtom3gXzvjSo=; b=YZQNAphI7ggvhUWVR1fhpFNKMdtBpolH8npwekL9+SuXvLlynBciiHFuGGBZMDU8N5YHIo WTXgkqf/plQbVuDgOwYLFIir5P8SDEFfeYem4OU3MF+7bmzxgIE34p73AJTyxn6t9HjcIU UZGv0e+J5dbCX25vZWDwyf6MfLjN8ow= Date: Wed, 19 Mar 2025 12:27:19 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1742412445; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=sZiap64g8PWqaP9A/RNcdWpawC9YJsZVtom3gXzvjSo=; b=rmbagfGIAuUu6eOihLERaOUKIATp+xlfmTWTVvBsfFUpuEXsjxx+BoiXxnJkWczGGlDq/r mqmT22bz0OZPCklCCh/35FHhmRL1bkTELkFMYS2s30XzEzC+KtFZuQabYDXG4oDyPVnwYf gX5RdjdI82wbo0Y0uVj5sqBeW+1m5xE= X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Shakeel Butt To: Jingxiang Zeng Cc: akpm@linux-foundation.org, linux-mm@kvack.org, cgroups@vger.kernel.org, linux-kernel@vger.kernel.org, hannes@cmpxchg.org, mhocko@kernel.org, roman.gushchin@linux.dev, muchun.song@linux.dev, kasong@tencent.com, Tejun Heo Subject: Re: [RFC 0/5] add option to restore swap account to cgroupv1 mode Message-ID: References: <20250319064148.774406-1-jingxiangzeng.cas@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250319064148.774406-1-jingxiangzeng.cas@gmail.com> X-Migadu-Flow: FLOW_OUT X-Rspam-User: X-Rspamd-Queue-Id: 9C44E20005 X-Rspamd-Server: rspam05 X-Stat-Signature: qntyh1n5dikrb43hk8eajdkjcywbopbk X-HE-Tag: 1742412447-496605 X-HE-Meta: U2FsdGVkX1/SG0QkTSEi/L1VNwmUKXabenqc2aalrtRZNuiYJrLXrTloEgbtweGOVLdBCzh+E6pMV64rv8jUoJjYVgWa9Je/fDsa+FH39fAxGDaB2xSQrqqZI1YrIsHBJSyVeA4GcOPQrFpdiHOP5+MEKM5Q4AMP9YSQI7jX74eQ9XgZ9Slo0Jh86NlCndnOT7OGiqvwfzO6V69Rd1zMjGdHr9nlr4vilz1GPAmYd5q0VAbnQCvOzs6yz5y79chOGc4UKbH82Fhlf6b8SqSs62kl0K7ngazMtdWQACAdRyzU8Ug5Uxyg9UKqmJUl8zPE+ZgbwMAN67q0usGoTaHMQCRYcxBXtuuTV8vt0IE13j8J7MR1NW/xx0xH+qIM6ML1KmXLAvQIxTuKAY+HlvL6hB0aEZ/Ss6Tjm/joo31sMJZx9ga5rHUDGXCTzeU0mXdFp9wB0556kPVd3e60MnpJxwh4/iMMNI1CXh9cm1Q4dh1Si5Kk/1zN7o2bf71KqVtuqlzmbZLcEGGqKbDWc11+2vy5hVOrGuCcjObZLHuY1nVqYGcKDX3I/JSBEId67ZsiPpQp0IFIuChQfIQIT2b2cqDa0g2TtbRw6+TFLy3mvnZ6mpdlYFLiceE/0TXyu+cm+WPiGTD2sGzdt+I5a9hZCkERanhpNhGgAwpTxk4bvPtvkQ08yw9Qw+5fQ6kSgdGaeCxHE6U/HCtPWwoNlnqs3l6wzXhcp4hhW/USftCJGYbTC72mYsvyeBHoabX29SQXun+iNEf+NsUhp3C8ArLHCGA1rjfPfhjTOZa3w/PWpBHSfwm0ixiI0tJXCRlGEDQBmapDRq3lffw36hI4bxKdsPgmQ+yKWBZNHxjgMx/I3eHzc7qm2xGkln4+nGWEU5MNsiwsnjej8RCX9agu03yiQ7PMi/SWjUwyKCFp4PJrSx/y6si0lVhOX4UXgCZjV5GRJClOyOEYp0xqVIlNrWr /82nX9Ve b5HWOoXIgd2N/P9hzK4UTNIQpYL7YekhkGRRImxO9KuuI8WMSfAWStx9S72b7GNiYl0nEJ3ULRYrWsWcIoaldvtArVU7V7Bi+jsJlrVBru8mNgSStZ5GclsJOOG6na3pJgL5rQHVUF5Ykeg5CLMyfFK99C0KPyUsXnJDjWerE/VQmie2EIqnT3e3oF+ia9vhyDDZ1oHwGOziVBD6IItWjjAnjoBR6lx7+Mv5w 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: +Tejun Hi Zeng, On Wed, Mar 19, 2025 at 02:41:43PM +0800, Jingxiang Zeng wrote: > From: Zeng Jingxiang > > memsw account is a very useful knob for container memory > overcommitting: It's a great abstraction of the "expected total > memory usage" of a container, so containers can't allocate too > much memory using SWAP, but still be able to SWAP out. > > For a simple example, with memsw.limit == memory.limit, containers > can't exceed their original memory limit, even with SWAP enabled, they > get OOM killed as how they used to, but the host is now able to > offload cold pages. > > Similar ability seems absent with V2: With memory.swap.max == 0, the > host can't use SWAP to reclaim container memory at all. But with a > value larger than that, containers are able to overuse memory, causing > delayed OOM kill, thrashing, CPU/Memory usage ratio could be heavily > out of balance, especially with compress SWAP backends. > > This patch set adds two interfaces to control the behavior of the > memory.swap.max/current in cgroupv2: > > CONFIG_MEMSW_ACCOUNT_ON_DFL > cgroup.memsw_account_on_dfl={0, 1} > > When one of the interfaces is enabled: memory.swap.current and > memory.swap.max represents the usage/limit of swap. > When neither is enabled (default behavior),memory.swap.current and > memory.swap.max represents the usage/limit of memory+swap. > > As discussed in [1], this patch set can change the semantics of > of memory.swap.max/current to the v1-like behavior. > > Link: > https://lore.kernel.org/all/Zk-fQtFrj-2YDJOo@P9FQF9L96D.corp.robot.car/ [1] Overall I don't have objection but I would like to keep the changes separate from v2 code as much as possible. More specifically: 1. Keep CONFIG_MEMSW_ACCOUNT_ON_DFL dependent on CONFIG_MEMCG_V1 and disabled by default (as you already did). 2. Keep the changes in memcontrol-v1.[h|c] as much as possible. I will go over the patches but let's see what others have to say.