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 972F6C3DA61 for ; Fri, 19 Jul 2024 03:23:43 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 18A286B0083; Thu, 18 Jul 2024 23:23:43 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 13A206B0089; Thu, 18 Jul 2024 23:23:43 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 001076B008C; Thu, 18 Jul 2024 23:23:42 -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 D6CF56B0083 for ; Thu, 18 Jul 2024 23:23:42 -0400 (EDT) Received: from smtpin03.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 5E8E81A02C0 for ; Fri, 19 Jul 2024 03:23:42 +0000 (UTC) X-FDA: 82355057484.03.C872424 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf02.hostedemail.com (Postfix) with ESMTP id 7D2B480004 for ; Fri, 19 Jul 2024 03:23:40 +0000 (UTC) Authentication-Results: imf02.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=LTLBpHUv; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf02.hostedemail.com: domain of longman@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=longman@redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1721359374; 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=4g/2by4UFmJt1nLIIzaKlS2HPKjw7tCpSzx5XVWX0GE=; b=GR6dIpZihgB3cZNDuskih5sNvZQ55ys+JXDEeg0as7w4FOTzovJP8L54Y98lIWE2agL82i ZOESYj7ypI7CHitgqZZN3KUEG+sPMGgKBx30mMtJhzLfnHxCBtsC/EgP0QP+hhXdequjyi EdjCWYkDMM1d11JGeFxgEPEYD1UoWi8= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1721359374; a=rsa-sha256; cv=none; b=X7SDDiiHrIE1bJt+oJqneEQZUuiPUHHaH3yw7kOK5A5mbHgH9NkI0A0a9ttAN5s2Jxisr3 okXIUeJps+GV6R4dmlaAazCzjZ2bj7InFoV4vRO2RNGRk4TOtS6agGT+Rke+jf1VLil4Wf SwbPlzdRKMCuveF581/ZYn0NrwemjpM= ARC-Authentication-Results: i=1; imf02.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=LTLBpHUv; dmarc=pass (policy=none) header.from=redhat.com; spf=pass (imf02.hostedemail.com: domain of longman@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=longman@redhat.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1721359419; 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: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=4g/2by4UFmJt1nLIIzaKlS2HPKjw7tCpSzx5XVWX0GE=; b=LTLBpHUvkRH3apzy6ptGf5gzKzfOHT3Uhuvci5JI1c2KpOmtg4tI5ziB3mLPq48+mlK41R vuwknZpYMpdUwfx2yNAtS8nvPv4jPVgalVP47gqrprituf6MaIgk61nwhTZQCYBH4uAS8b Bq3+ew5hB/i9DvC+LuzdO+TQYdzq8Xg= Received: from mx-prod-mc-02.mail-002.prod.us-west-2.aws.redhat.com (ec2-54-186-198-63.us-west-2.compute.amazonaws.com [54.186.198.63]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-182-QO0slx50PEa2lPJEq-XW8w-1; Thu, 18 Jul 2024 23:23:35 -0400 X-MC-Unique: QO0slx50PEa2lPJEq-XW8w-1 Received: from mx-prod-int-04.mail-002.prod.us-west-2.aws.redhat.com (mx-prod-int-04.mail-002.prod.us-west-2.aws.redhat.com [10.30.177.40]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by mx-prod-mc-02.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTPS id 9E6561955F43; Fri, 19 Jul 2024 03:23:32 +0000 (UTC) Received: from [10.22.32.50] (unknown [10.22.32.50]) by mx-prod-int-04.mail-002.prod.us-west-2.aws.redhat.com (Postfix) with ESMTP id 0C698195605A; Fri, 19 Jul 2024 03:23:28 +0000 (UTC) Message-ID: Date: Thu, 18 Jul 2024 23:23:28 -0400 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] mm, memcg: cg2 memory{.swap,}.peak write handlers To: David Finkel , Johannes Weiner Cc: Tejun Heo , Michal Hocko , Muchun Song , Andrew Morton , core-services@vimeo.com, Jonathan Corbet , Roman Gushchin , Shuah Khan , Zefan Li , cgroups@vger.kernel.org, linux-doc@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org, Shakeel Butt References: <20240715203625.1462309-1-davidf@vimeo.com> <20240715203625.1462309-2-davidf@vimeo.com> <20240717170408.GC1321673@cmpxchg.org> Content-Language: en-US From: Waiman Long In-Reply-To: Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Scanned-By: MIMEDefang 3.0 on 10.30.177.40 X-Rspamd-Server: rspam07 X-Rspamd-Queue-Id: 7D2B480004 X-Stat-Signature: njz6nszokmuphotxazwx7uip86m999uz X-Rspam-User: X-HE-Tag: 1721359420-770647 X-HE-Meta: U2FsdGVkX18eh9jTQEMIlb96XwcB6gnItLv7XjkLU6lkCJ3A5a5Ruybj2voFN21+rlzKjFXdARmSWO3NM5AeWxteC4CM/n0FQCYuOHAzH+zOE0WkAOxU/Vy8P8erd+NK2yq9kYwHn7y2xFqaue1hac28emfgVCq8RaiqOw719p6qYGTVaUSaDRH/VAZppWxeJYJiOL9pPIkhuEBObb7+VVpyvifGvaA/22ntsMhg3SMKGSefKyTOJ5siMPB7CEdTIsUN8N9EMdofDGOMOAY7/ckO2Obs6GYeFLI7TxWjQsYMnqJJadNhj6MzZq+Clf7XUV17P4dB37iT315dlsAAvJnIIKgYHXjL389VsvSebrzcag6F4tluwzDFE693GhFxy6ocYbohQCdY0/9UJoCYckIYA2WXTSrXlWddTL4IKl2BiW64jKElF4FWD7X9taTWaBDkZY1sGoZfrkMpNaeH553AmJNQfC9kuTQ3x0ahteKbOncMA9QicyVYGjl7Xx9JD1o4Cp8yME2aiShpuDGxr60JO6DZf308WWAfrXs1pbyPHZm0QFnyj+gximIoL/p+RJZwJUl/L0g/i5a+nfKqRC7OGz1u5idR0O79qr9PaCgwBM6cX5cr926Q/saiwU0UUwBRMG8taGYGCe3ET4LAnKUT6fYwbCqs6SMAY8lFzTblIO6ZK1brX10eH/cSL16Dw6xSMpydwYLJizyvN60TLVwSjyNACif1Z4N0d+hu0q7xDAvJlkELTploNGEpviia2DNKiz+4GQMdu6Yw8TdSVSXBdq7EGNtuMSMayg/XTKx7HkoRPP9QnJmdnJwHymW5vICKcyb5wDZ1CZSrXQPBqpvRzQnhO98GSkugX3uG9wtAJ+LxL6wx0PTLFDvEeRZ2zfjoiXs6Dv+r9gl+fkgzi+jBwMMxojOtA/o9GqVv0zYj0EsqPqQ9KKBC0bA/gUnPM+w4qEeO36MgAR9zTJQ NYvrO/y0 5liYCsIjSrep2L3+JesHc4B6xYKKiS/9ztg5hjp4PBR/5RD3Jk3ok5eDNCXedlDHQnof2tqfnEQauZd0GTPIUISHY9qip5qFfmSijp84xG53ClcEE5bE0Ei8TqD5xG3fROu5qlHxM1ubdCUGZuhnTC+PNw5m1nP+tcZG0EyTOEExOt06sot10NRnoHOB9i8EAL0Dt2D8+9xvBjhTgD9SVbVWq2S4lVpy3SaymliBbKdcVRpPjrcsNSKHlKftrn2yUQ/IDz6/Z/44hsIWaDtqWsyo19+scyrp4xty/wGY5OSDKK4vumIaGA+WtwZKtYRY5I9eU 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 7/18/24 17:49, David Finkel wrote: > I spent some time today attempting to implement this. > Here's a branch on github that compiles, and I think is close to what you > described, but is definitely still a WIP: > > https://github.com/torvalds/linux/compare/master...dfinkel:linux:memcg2_memory_peak_fd_session > > Since there seems to be significant agreement that this approach is better > long-term as a kernel interface, if that continues, I can factor out some of > the changes so it supports both memory.peak and memory.swap.peak, > fix the tests, and clean up any style issues tomorrow. > > Also, If there are opinions on whether the cgroup_lock is a reasonable way > of handling this synchronization, or if I should add a more appropriate spinlock > or mutex onto either the pagecounter or the memcg, I'm all ears. cgroup_lock() should only be used by the cgroup core code, though there are exceptions. You may or may not need lock protection depending on what data you want to protect and if there is any chance that concurrent race may screw thing up. If lock protection is really needed, add your own lock to protect the data. Since your critical sections seem to be pretty short, a regular spinlock will be enough. Cheers, Longman