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 5756EC3ABA5 for ; Wed, 30 Apr 2025 01:30:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id E6B646B00EC; Tue, 29 Apr 2025 21:30:13 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id DEEB76B00ED; Tue, 29 Apr 2025 21:30:13 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id CB6A06B00EE; Tue, 29 Apr 2025 21:30:13 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0010.hostedemail.com [216.40.44.10]) by kanga.kvack.org (Postfix) with ESMTP id ABF3A6B00EC for ; Tue, 29 Apr 2025 21:30:13 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id D08251208A5 for ; Tue, 29 Apr 2025 23:04:47 +0000 (UTC) X-FDA: 83388613014.24.D7A5197 Received: from out-187.mta1.migadu.com (out-187.mta1.migadu.com [95.215.58.187]) by imf30.hostedemail.com (Postfix) with ESMTP id 2E30B80008 for ; Tue, 29 Apr 2025 23:04:45 +0000 (UTC) Authentication-Results: imf30.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b="O9B/j4kT"; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf30.hostedemail.com: domain of shakeel.butt@linux.dev designates 95.215.58.187 as permitted sender) smtp.mailfrom=shakeel.butt@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745967886; a=rsa-sha256; cv=none; b=XHKn60Hd9vDCScfwQQcDULzUcfCNXPrc7oK33RmrZ4NXSOOxTqyNwvtwJPidQLji7ijO91 62FCPWdD5OIO9SD4Geqve3Q2TT7liv7uqblPtFxBm1dPH6XBibrj+Pp9W6attc7lmJDE9s 0eCUytm+KgxD23OfgKqPwh226Yd5AR4= ARC-Authentication-Results: i=1; imf30.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b="O9B/j4kT"; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf30.hostedemail.com: domain of shakeel.butt@linux.dev designates 95.215.58.187 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=1745967886; 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-transfer-encoding:content-transfer-encoding: in-reply-to:references:dkim-signature; bh=9LEq+0YVLr8RjiVsen+N5ydlKWCucWJnExhqzdnNX/Q=; b=AbfZoGvfwm+jIJ85AGXxgKsqbfaHtc1Nv7YQCa9c1Z2ZW06i0YEI7VpsL5yd55EsB13yrN enDtWIm6vusqAxVxKwI7ucs1Nm7rVkQyA6vdIRT0Mrm2kSVHVSuHAfWc3gQxJnmEBwoTFU G5pzSnTp3ZBPu16jaVGcxLwn1hjz9z4= X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1745967884; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=9LEq+0YVLr8RjiVsen+N5ydlKWCucWJnExhqzdnNX/Q=; b=O9B/j4kTnqmgfyx3TZeQm7bYlhygFXNwyMUrv6cwJV5dUMJ5qF112UrOQ4PTON+oao8nUI ztnkjHuhxfBqFactakGabC036XJUkWtcsTnG41Z8VKBb/vvAQfsaqdcTNiWxqyHLsQxuMv RvO6JIeCst/jQe2byex8Atn66Kc5trU= From: Shakeel Butt To: Andrew Morton Cc: Johannes Weiner , Michal Hocko , Roman Gushchin , Muchun Song , Sebastian Andrzej Siewior , Vlastimil Babka , linux-mm@kvack.org, cgroups@vger.kernel.org, linux-kernel@vger.kernel.org, Meta kernel team Subject: [PATCH 0/4] memcg: decouple memcg and objcg stocks Date: Tue, 29 Apr 2025 16:04:24 -0700 Message-ID: <20250429230428.1935619-1-shakeel.butt@linux.dev> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT X-Rspamd-Server: rspam03 X-Rspamd-Queue-Id: 2E30B80008 X-Stat-Signature: f4azineiw1x1geaa5wmo4mdzws19xu7p X-Rspam-User: X-HE-Tag: 1745967885-414153 X-HE-Meta: U2FsdGVkX1+L60/m0+tvl64CdFl5wjBNeSaV1yqj8InLwQ6EVDJOtZRb1r5q4rc0gMw/HZCP9e0E7Ht1h2rhf3R6cgkKsucHv61lJYrMSh9C1qUXgON9Lkr0yYbNr9e2K7t+rUaFz4Vt0wU7CcC2wDRsbrgrPOOsgqgMTeuNr2w3dlMGPaForTmA1G1o0YO9lOjjrbFxHLW9MsaIqANh3TLB+iEfFtc3WzqmHCPS0kHkWVRSrcFIwQwd4LxTH7fb6w1RIlGV5vYYztPmrYkJQFAaocbEIRG13EXEGq+Ks/qGJPnXY8SC8A8K/b7LyvFJVlw66KYfmdHJwkKoFuqppI9HnBvoNdaJSS/poCSaWidAJ2sn3c4tBmowlnRa6iYoWweU65hyjD08Wmu5zZf3GYJN+XR/t3Lsrt0whfh/mlR8UKyH2hRFPLlo0Q3J4ZK8zX2C2H4w6J9mBWly81tGV38Y19RS9zNpG7Rxu1VTfyCu0VoaLIJIwOGWkQdbxKL45UxFrTLnlu30woFh7KJ3+FwzudlW2Fxrg81kwCLRNiy45PqBo4k/EeEFOe2l3dHb6q3a7gDW0uCGFLCmO5azpFxcDnxtMJgyzkXSCkG4DE6UOo19e6ZrxFC2o2MsJnawNMCUq6E2mgaBmBOwqnvb31a4YXtbqU8gq7KZbg/0Dtxi3auLfDYSJzbb2K9eMHwGl87M8qemIkp967vIbuH3LPWrAHOJQ14Y28GSnlyxkQG0DUlR+QElA9iuoa86cwzpuFvS11wchcCdEIj3KfBRt2oVTRa/gQhp8W+dlA5FI2OSzS1faJyg1O4ajj3gd9qkXPMr0NLm8SE6uZJWrms/sQEbAv/Z7lsPC2BSthUNrhV+nlbY2dLfCNHTs86CY305YiLoGL+rA9CBeUOI51fCICykYE00o7cPau7ETl55pe0AWACNrm9umithuCAMMMzkihMMn/t5+TMLWiqRby+ +n2hODeR mD02cFeORZ8pX2O2i3wuWzugXKIhZyx/m3dVB0cz9g4Aam0a3P8ORU0Sz7AZpuUefei2nsiheWHi5JjHkV6/Vv2RH2C1CVqcJKEVASisXQM146WYDbwNCkZ2y5uStAh8N1GnN5BBwqkk9u8bvOC/SP2pz+mDPgWK96tD5nyKfJ2itiiU= 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: The per-cpu memcg charge cache and objcg charge cache are coupled in a single struct memcg_stock_pcp and a single local lock is used to protect both of the caches. This makes memcg charging and objcg charging nmi safe challenging. Decoupling memcg and objcg stocks would allow us to make them nmi safe and even work without disabling irqs independently. This series completely decouples memcg and objcg stocks. Shakeel Butt (4): memcg: simplify consume_stock memcg: separate local_trylock for memcg and obj memcg: completely decouple memcg and obj stocks memcg: no irq disable for memcg stock lock mm/memcontrol.c | 174 ++++++++++++++++++++++++++++-------------------- 1 file changed, 102 insertions(+), 72 deletions(-) -- 2.47.1