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 3BCADC369CB for ; Tue, 29 Apr 2025 06:12:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 2EB786B000A; Tue, 29 Apr 2025 02:12:30 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 29B1D6B000C; Tue, 29 Apr 2025 02:12:30 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 164A06B000D; Tue, 29 Apr 2025 02:12:30 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id EC21C6B000A for ; Tue, 29 Apr 2025 02:12:29 -0400 (EDT) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay10.hostedemail.com (Postfix) with ESMTP id C8779C0F10 for ; Tue, 29 Apr 2025 06:12:29 +0000 (UTC) X-FDA: 83386062018.12.1578C39 Received: from out-181.mta1.migadu.com (out-181.mta1.migadu.com [95.215.58.181]) by imf26.hostedemail.com (Postfix) with ESMTP id E9B91140003 for ; Tue, 29 Apr 2025 06:12:27 +0000 (UTC) Authentication-Results: imf26.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=pG0gvPFe; spf=pass (imf26.hostedemail.com: domain of shakeel.butt@linux.dev designates 95.215.58.181 as permitted sender) smtp.mailfrom=shakeel.butt@linux.dev; dmarc=pass (policy=none) header.from=linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1745907148; 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=1vGq4MwXGBU2BwGXIJqfgqUXOST/Ia51A5EY2pHZHj8=; b=5egqSEXKnMtqhlvxh/n4UIucbnX1Ys3IthteBbUWMG7IFG0MqtgdJ0eV+1DS6Z4ukXFsu8 r7d6rGxpy2/Nyu0GpbzBqQmrxFo2UiKZfIIioAEhMlJwrlKiosvM7eIlkPmllevWWubdjE efF2+5cf8pq3rR0/9+Fv6G3Z7cHBGaQ= ARC-Authentication-Results: i=1; imf26.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=pG0gvPFe; spf=pass (imf26.hostedemail.com: domain of shakeel.butt@linux.dev designates 95.215.58.181 as permitted sender) smtp.mailfrom=shakeel.butt@linux.dev; dmarc=pass (policy=none) header.from=linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1745907148; a=rsa-sha256; cv=none; b=tDSeuHl81KvMDd8epYDP6AsLJSWbt5DWOGGZluIZyJvI3OTUNt+0N5L9geLJIFllCz+MIw P9EUdTehM1hUvShlPqJePV7PWWDDzhUOoCFshMPXAxWyWMmAQ4NiuGOKVV6CXfeiu9c9Sc tWSpm7+GMisi/fnwbcopeb++buX83/M= 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=1745907145; 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=1vGq4MwXGBU2BwGXIJqfgqUXOST/Ia51A5EY2pHZHj8=; b=pG0gvPFeZ4aI6IFrQ53IlmNlS5nCGNRbVl9idb8bgNTJu0XQHdBl+OnndRmlRzyQmXVo3l Qpuy+MJaig53kCsoHkQf6aKgfWvaUE66RjcoFxl3ENK0nLWRsPtYehD18FWL+zJZ98TTNI YNz6T4Ci6WfaL1wHcbEbE2JCfs4OOEs= From: Shakeel Butt To: Tejun Heo , Andrew Morton , Alexei Starovoitov Cc: Johannes Weiner , Michal Hocko , Roman Gushchin , Muchun Song , Yosry Ahmed , =?UTF-8?q?Michal=20Koutn=C3=BD?= , Vlastimil Babka , Sebastian Andrzej Siewior , JP Kobryn , bpf@vger.kernel.org, linux-mm@kvack.org, cgroups@vger.kernel.org, linux-kernel@vger.kernel.org, Meta kernel team Subject: [RFC PATCH 0/3] cgroup: nmi safe css_rstat_updated Date: Mon, 28 Apr 2025 23:12:06 -0700 Message-ID: <20250429061211.1295443-1-shakeel.butt@linux.dev> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT X-Rspam-User: X-Rspamd-Server: rspam09 X-Rspamd-Queue-Id: E9B91140003 X-Stat-Signature: m6riso53wz7mmwo3xiqrd3tqr7bfio35 X-HE-Tag: 1745907147-617191 X-HE-Meta: U2FsdGVkX1/EZrFPMSAyVDqckJO1gJct7sZKalZGSAy0ZIRYVieei7mG/BJcs4130JD8sfGWbDr/d4ht/D+KbrqgPRLTVmTSas2MMfSwi6s0eaDkgU6dI+qSKiCE2YDQ4zXQhne37CzVia+Kg+6lw19V20Pvx6GPM/4x7tGENApDju7a2NpmpOFvebt8GTxEZ6hK/1JMXxskOi2E/PFLr3v7PRHuQku0GKiZBEcyhoQM2fDWvLiByQfcZ2voN28dQ8vE2FpwDrSKEIIbl1H0nmI+7AtYFymzLqkCT1KaT8Yb1KDypNkjixRyoge8jWzqqBv9N8qs4EZZtP84Y45qiSu2O6IhmGDyhOJzs3xMWxjDZifKAB8J11CQ8+gUZIMHGTg2XNk0gW/ZD9/anKSySmf1TQQ/l10hQUMa346oRHwN3rgBXArP3E2GkweB4dq861C6rgIbdZdu059RdV9hQyEUl2cloM582FA8KStIQSZDrb0LpyncTsszzCNDWcN8SB+AG6/gQAHM7P3YIEv3V8IaJMxl/xD7jtXiLQ0jy2SAbZTP85waoMKTsBdZDCMjDyYzMTE4N4Yv2QcPzUG2pQRDjxWyNwlYDznZe+efYVwipBfMTlM9m4PjyW7Y/78eRD2hlxAfGBcbfQIFJ9GQDpwRhbP93WqNVBPw+kwhdP8NxbGcZFxaKg9Z6jYD3y/+g6ssGVtR0U/rB0Lmx2ogOUKvkayF73E5tBRbFBiaHtGIc0WhUvRvOon2V9TfNhLzwdRekh7HR9O+QAUVd0JQHy+DuquaWTWFeirR6WB617+UaNCK75Dyv/KOgmcJoNULCFM0d7UuF1B268/kIgUSOLCoqGai8PwR9R+JRFOH+dD0FqgZirve7tus+v6IDNponhwzPV9uYPm44dDdYXjLYFH/n4BpMSq0mqpJgr+Vym/bQ47yt85XgFwogcQuLMAzpbEShwOfHJuZ2qiN+WF jd4vgynn mEV6unwbE5fU47k2+bDWyNJRFtT7MF5r0p61rsPZkTA2Dc6WdgNqoSOqcIh3JmRnx+SSL21/Q8wOP6t31hmyu6aMwRu5UV1EEQvwSnJLDKcZRAL5iX23U8iDcTqcxGGs05xkxw9sTvOLRUs1vTaDYSG17irb2ZH0tKCWa8rg+Qngz9EvLplak57UWg154MQccYKk3fFrOUg15m9ROY3PxPnsOh8qyYAJ2rGAH+f00lta9zwn6wRuQqVvP3uzxM31yuKKNjKYi6KvzIoc= 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: BPF programs can run in nmi context and may trigger memcg charged memory allocation in such context. Recently linux added support to nmi safe page allocation along with memcg charging of such allocations. However the kmalloc/slab support and corresponding memcg charging is still lacking, To provide nmi safe support for memcg charging for kmalloc/slab allocations, we need nmi safe memcg stats and for that we need nmi safe css_rstat_updated() which adds the given cgroup state whose stats are updated into the per-cpu per-ss update tree. This series took the aim to make css_rstat_updated() nmi safe. This series is based on [1]. [1] http://lore.kernel.org/20250404011050.121777-1-inwardvessel@gmail.com Shakeel Butt (3): llist: add list_add_iff_not_on_list() cgroup: support to enable nmi-safe css_rstat_updated cgroup: make css_rstat_updated nmi safe include/linux/cgroup-defs.h | 4 ++ include/linux/llist.h | 3 + kernel/cgroup/rstat.c | 112 ++++++++++++++++++++++++++++-------- lib/llist.c | 30 ++++++++++ 4 files changed, 124 insertions(+), 25 deletions(-) -- 2.47.1