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 AA375C3DA5D for ; Mon, 22 Jul 2024 15:17:30 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 41E716B0089; Mon, 22 Jul 2024 11:17:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3CE436B008A; Mon, 22 Jul 2024 11:17:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2BB366B008C; Mon, 22 Jul 2024 11:17:30 -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 0D7536B0089 for ; Mon, 22 Jul 2024 11:17:30 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 985B6417E0 for ; Mon, 22 Jul 2024 15:17:29 +0000 (UTC) X-FDA: 82367742618.18.24268CB Received: from m35-116.mailgun.net (m35-116.mailgun.net [69.72.35.116]) by imf10.hostedemail.com (Postfix) with ESMTP id DA24EC002D for ; Mon, 22 Jul 2024 15:17:27 +0000 (UTC) Authentication-Results: imf10.hostedemail.com; dkim=pass header.d=relay.vimeo.com header.s=mailo header.b=OQr5VMlP; spf=pass (imf10.hostedemail.com: domain of "bounce+ea57f2.9d2a1c-linux-mm=kvack.org@relay.vimeo.com" designates 69.72.35.116 as permitted sender) smtp.mailfrom="bounce+ea57f2.9d2a1c-linux-mm=kvack.org@relay.vimeo.com"; dmarc=pass (policy=reject) header.from=vimeo.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1721661387; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=H1NwTDWsm6JLac8CtJ+mqmRo778a1UcN1lvfUIsLWc0=; b=0NGB2RA73XhZPkCKmPkrubfeJnaxMNvqN4F0KliuLhpdOMofwDGNnOKxf8NY3H4rlt9r+3 btALhtXCa7Bxu9qeHKfVTod2dy6R4HaYrFnrOCCnk2Dc2ZIcLktXFTGe3WeltFw6C9+zQ6 KHBM7tmI/cW/aq+qNdxZ+IesjI6zLEg= ARC-Authentication-Results: i=1; imf10.hostedemail.com; dkim=pass header.d=relay.vimeo.com header.s=mailo header.b=OQr5VMlP; spf=pass (imf10.hostedemail.com: domain of "bounce+ea57f2.9d2a1c-linux-mm=kvack.org@relay.vimeo.com" designates 69.72.35.116 as permitted sender) smtp.mailfrom="bounce+ea57f2.9d2a1c-linux-mm=kvack.org@relay.vimeo.com"; dmarc=pass (policy=reject) header.from=vimeo.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1721661387; a=rsa-sha256; cv=none; b=ZvALROjaOSdy7xwUj1KiXXN7gpvvoZlZbdzL2gjPwA4AJeirTHgQeursK+5Pt6zSNO3rky FwArsf0ZTZHO5h54ewgBjFWYA6QhYxI/ZSSpZkSi3hcYB6b8R1OBzry8VCNQzqdeb39TFx gBraB4rQ1zgULYeETj4Uc594zGQ7RjE= DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=relay.vimeo.com; q=dns/txt; s=mailo; t=1721661446; x=1721668646; h=Content-Transfer-Encoding: MIME-Version: Message-Id: Date: Subject: Subject: Cc: To: To: From: From: Sender: Sender; bh=H1NwTDWsm6JLac8CtJ+mqmRo778a1UcN1lvfUIsLWc0=; b=OQr5VMlP/wKE7o98DO0LWIwQ8IQWZ1NvgSE4Frz0Y6Hg7Wj3dD3n4QWurrPR4IETU2fOKCKt13dVaVWqUcfLj/homg2/wtfmZfk27efuNfiFoBtUYp6cONl0DlEGSr4QlW3PhiPbKvF4rFjfAA3BjCOWxSygedLbnsazDoJ9hnA= X-Mailgun-Sending-Ip: 69.72.35.116 X-Mailgun-Sid: WyI5NTRmYiIsImxpbnV4LW1tQGt2YWNrLm9yZyIsIjlkMmExYyJd Received: from smtp.vimeo.com (215.71.185.35.bc.googleusercontent.com [35.185.71.215]) by 28a30437924b with SMTP id 669e780644aa569633205891 (version=TLS1.2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256); Mon, 22 Jul 2024 15:17:26 GMT Received: from nutau (gke-sre-us-east1-main-4c35368b-n90a.c.vimeo-core.internal [10.56.27.205]) by smtp.vimeo.com (Postfix) with ESMTP id 0C76264D5F; Mon, 22 Jul 2024 15:17:26 +0000 (UTC) Received: by nutau (Postfix, from userid 1001) id 9F159B4090E; Mon, 22 Jul 2024 11:17:25 -0400 (EDT) From: David Finkel To: Muchun Song , Tejun Heo , Andrew Morton Cc: core-services@vimeo.com, Jonathan Corbet , Michal Hocko , Roman Gushchin , Shakeel Butt , Shuah Khan , Johannes Weiner , Zefan Li , cgroups@vger.kernel.org, linux-doc@vger.kernel.org, linux-mm@kvack.org, linux-kselftest@vger.kernel.org Subject: [PATCH] mm, memcg: cg2 memory{.swap,}.peak write handlers (fd-local edition) Date: Mon, 22 Jul 2024 11:17:12 -0400 Message-Id: <20240722151713.2724855-1-davidf@vimeo.com> X-Mailer: git-send-email 2.40.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: DA24EC002D X-Stat-Signature: 6eg4gtutgjgxpr5d9hydpnoqk7jj8y6z X-Rspam-User: X-HE-Tag: 1721661447-310668 X-HE-Meta: U2FsdGVkX18+Mb6YxQH4ruu8ppWjlmEWE1w5wDhc8rg1xV328pEqrb6s7p/TjiSsA9sWz7utF/lLHNbTMpb2BJbf4t2hsBfHYGJHdatZHrP7dDmWxm0SwGhBqrWxaxCh6wfSdr5mffMmTWkxOdosVWISN1MvoLRRKjYwlD3nrzUg9XAzMZTbZcethjlTgNEZDJtW4LD5UZ8rsxQGakJSzXVUBPAEoPO1v3/8N0+sEfnYdtG/cgGEecIu9YNT0dWhtNc4zYVRDr7fvvpshy/rRkzli4dPiA9+7jgbwEyKFS484EVrc6OP2AqQNufWiKyE6oq9Hy24uJF2tCiwnXQ+ezcshMdrXa4N0e1a4rXgd5Y0t5VKEWVQznLiLTdwk9kZVle2UHcPmRvu0T4o2Xj1GairEKmHBFNVurxlFplcKDHYEfOu66a2yygxreSzjrqvPqpVKiCH53fkuWh88+H4pG5ZMOX7lUXbZ0UkHdk4tACy9h+KlCzq/o9wOFo2vERV/I6Ep7Z+b90gAhjeQf7EOsj49AIJedHHWr5Z01/IAELFmqId4AgOZCbNR9A9soruE2Kakq/22Jr/SUKC9QerPif4HKS58+Yf2s/0VFkqMJEi1/p6V9gHuC1CT67Uz7j/+7vWs6N8+fNRF746Up/x9UmXqZrrzGlxqfjdkoFC2mGyb00Zu3DJ4GpQVJY8N2LnZpvyQ8JKi4fMiKe7i6wP+NRiwM8J9xNOO7Dop8kn8OJR+iaO5o8fjTBbayQILDvCA1cythG21LzJJwgFfJUwyFAiBw80GwEVVuRQLPk5rfHtdYb172Zls4lkR8d7Ys8gDtpxUM09fe794FKxGrTVxd2JtXjfrJtllANPDlpOvA0cFUGDPF3mNXrJXnXc9NGfpZ1ob5scmJy3XdnvEi3MD7be8eQWF0JeM0sOmnI2WwOf9eRclWfcWlcdel9ledPS97VQZFFegfKOdvP0DnD ybX04spz b/VZyBURhTSwxlEpMwdTCc2bh5jIC5CaG71L/BDV7N0HmMJ/h5LTxEGzFDhm2jOutZeU6CMqlw00jhViZGKe/S6U+tJ4thWhHl7zys2s24re+ppgKLSNGXG1DFwuZYOdoULoQuywW2UJX0ImnrUNNgWdUyIXI80rOjOfn2QNE6+BV/xQ6UfMcBv1iQdY/5T/du1pabJyKc+log37FhJp2y/ViuKkmhuQrXL9eHvJJciMVPTENVDZ3VWC/XItP2oBIsI+c+UOD0KOhSZTvmp2EQQdzFNw5T8m2CDKo6ekvWwfVs6mD5KZ9aaZzNvO4whye86IbuPtcfJFVHGuRDBSwh5YQgoLi4rEPBotpbp8karrvQO9lBvI9xaWYfbjwnW4sI7Zn2ZyX4CjF1J1ZN1s1EvESavGVtuiW+OjuglfZNeleWT2oCqHCVlq3i/bpUj1QdMgCAyznazeYHHw2CJE3n3NZRbyGjAyBXO8aKAvJwWF9F98Xtl8KI3th3i2R+lZm89NqBX5/kVUuONdYrlg/nkB1/UeIHTXuU91TV3tniXfZac2vB971Vy3fky1Drn+nM9cU/lsKs8DodpvAveZHV8kV0F+I5CiQkJNxmy80v37Tpmk5aA/A73K09g== 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: My last patch[1] was met with a general desire for a safer scheme that avoided global resets, which expose unclear ownership. Fortunately, Johannes[2] suggested a reasonably simple scheme to provide an FD-local reset, which eliminates most of those issues. The one open question I have is whether the cgroup/memcg itself is kept alive by an open FD, or if we need to update the memcg freeing code to traverse the new list of "watchers" so they don't try to access freed memory. Thank you, David Finkel Senior Principal Software Engineer, Core Services Vimeo Inc. [1]: https://lore.kernel.org/cgroups/20240715203625.1462309-1-davidf@vimeo.com/ [2]: https://lore.kernel.org/cgroups/20240717170408.GC1321673@cmpxchg.org/