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 38C55C282EC for ; Tue, 18 Mar 2025 01:13:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 847A5280002; Mon, 17 Mar 2025 21:13:51 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 7F92C280001; Mon, 17 Mar 2025 21:13:51 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 6E832280002; Mon, 17 Mar 2025 21:13:51 -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 505F9280001 for ; Mon, 17 Mar 2025 21:13:51 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id C6A45B756E for ; Tue, 18 Mar 2025 01:13:52 +0000 (UTC) X-FDA: 83232899904.28.EEABE82 Received: from out-176.mta1.migadu.com (out-176.mta1.migadu.com [95.215.58.176]) by imf25.hostedemail.com (Postfix) with ESMTP id 03357A0007 for ; Tue, 18 Mar 2025 01:13:50 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=VtTsTjJG; spf=pass (imf25.hostedemail.com: domain of roman.gushchin@linux.dev designates 95.215.58.176 as permitted sender) smtp.mailfrom=roman.gushchin@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=1742260431; 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=UXsTKHcuddy1YSKto3W7H1Cp7bk8qRJyAR00726aAHw=; b=PtRXR9829BYCWhkg05c98Llha3vNNMH83SuhabSs4GrpYHcQR3ZeRgzvSi3pCHsr4fXGnI Itr7e0RctOp96cWQSajWdvrVdx8j5rjK+ZXnx4FdUEgesQHUe9/7sikLKB3X56cnEvAmbO zw8iLYnSBsSUmVDr3DBMacK8F9kv7zI= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1742260431; a=rsa-sha256; cv=none; b=2f+AM4UNwgydz2ON1xFCtRrm0llC3/FHWosJa2pNdj4aKc/cQK7q1ErOwT0rJH+Xkb0eQN /T1SSEeLIJF0GFu1b2rmD1ops/E6U0AnNBezE5VIJnyQCgcGTGcbrFCljl+8V1BV56QUSR DJ15vFyX2V5gVSR/whFAiSAvvJnqCBI= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=VtTsTjJG; spf=pass (imf25.hostedemail.com: domain of roman.gushchin@linux.dev designates 95.215.58.176 as permitted sender) smtp.mailfrom=roman.gushchin@linux.dev; dmarc=pass (policy=none) header.from=linux.dev Date: Tue, 18 Mar 2025 01:13:43 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1742260429; 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=UXsTKHcuddy1YSKto3W7H1Cp7bk8qRJyAR00726aAHw=; b=VtTsTjJGb8MWmUtCJKt+7eGKLLa5cg9fuBs5cRP/UkiGZuTshbdUWj55y715ExOjMvORE2 LkwxUkbGT1MILWSH43oUc/3FbbQ/qCi6vSBTfixkEZL6tSDSfDNaIYZcrr3dkzZDahg+Oi 8BQYyD7HOilk6YmFzmAFrKjldiQ/z88= X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Roman Gushchin To: Shakeel Butt Cc: Andrew Morton , Johannes Weiner , Michal Hocko , Muchun Song , Vlastimil Babka , Sebastian Andrzej Siewior , linux-mm@kvack.org, cgroups@vger.kernel.org, linux-kernel@vger.kernel.org, Meta kernel team Subject: Re: [PATCH 7/9] memcg: use __mod_memcg_state in drain_obj_stock Message-ID: References: <20250315174930.1769599-1-shakeel.butt@linux.dev> <20250315174930.1769599-8-shakeel.butt@linux.dev> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20250315174930.1769599-8-shakeel.butt@linux.dev> X-Migadu-Flow: FLOW_OUT X-Rspam-User: X-Rspamd-Server: rspam02 X-Rspamd-Queue-Id: 03357A0007 X-Stat-Signature: zasb6ro71adg8xpy3u7sg1y64jgdseac X-HE-Tag: 1742260430-972055 X-HE-Meta: U2FsdGVkX1+Q8zDGFpH7wMadzpxA0pZ3x+G++jNGq4e2sfapl7h/AJAAmPH5EfH2OVBzTMYaYcv/VSHlK7rmPLYiM/npp+D33qt2l0ig7DKUw7nXw2V3arLulgncm7WM05DtrNYs0h/zCYVle0JSLamoYBP7ewYxUipWlwpqDtOmuLwq7Nz4JNUZHmI9WcrVAv+1UoEQ/ltZDrkZoGGa9KWSaIxJuUjs8v8dgdUbIX6cjKYqAhluVHKvhSwF4clZX3px6FpEJy19ok6pvfzPr01dfMqwwJpc7CWbUMPGtneUhCA8BWHAHVkXZ601PIokw7RoWiYY5NvrWDQbUaY3Gp6NbNp90v+II/XlrNsVTeV8ZUilzN4yLqvOgu3BlfztvQ3Xq4RV2zwzSg5D4DFvf+FxL/40ymBqcRB4/6CAjB2l3Kh+p/BesIfJhtv8osbxlA3Me+0p6ogxpp2gL3LeLClOejT6udMakS0gnyAdVEjDKJnv7IuI0etI07cSeJMEE0mBjhzMtzSJksLF05W09++4qOKm3174xDMJCms2nk94CYr2Y7VgqPRWsPHA9IjmB4xkkDosdBs62zCA4JnONDiMJDTuS6ODdSI/o9czR9sPw4a+MQL3O2T/UExB48mU/vDVlEjYzERCdvNStCKRvOCWM8B42GaAXMsJrUN05/CX/7v/Ecp+9NwFOtCUe9GfF5Kjo+aLHHbR6QlKv0CXVahcXaL55CRh22JsWtg1qfbYseiul3A8vxgdQu0WAfTakgN9xFV4ueOBqSDAtzwGqwTW5PtBJtx0t/RxLj5ffpbvX3iIOj+tYVUwVxPbWAgTVEQye0JrXjAEc3kKlnBRn1nblE2OBKejrZ56+G8DkJHTMVgCK6HAPF3w5wgYvsrYcikNawvizTTVGra82Y7pM4ocJ1WoWsRSgjhe3BHFoU7zNfCuiUPc79/PGOzW9MXwgkFvslqr/71x/Su2Uny R5HOwojg XzAh/gIxJEIo5l1g4goxYvIF9dfC81zUS068oXugrQKK5PmkkXyFpqcEygeuR/c+nfW5eA6TljUWjfWD6BYEeYHxFztbeBdSpuTSDka7pR+8rnoxDG6H96BgB1MswILio8id0C7hpGqWlJ1NGpOWKFvf2A5P73MrgdBCLKJ3j4UXnV8WhuGRGHyA+EKe1GSgXxsddb+L0w2nll+pGGpyqAz7yU7i8R+O+OjtvGu7wCxLZYFZbo59tPOEujW8nAAizs4W4JfQKa76Wyaw= 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 Sat, Mar 15, 2025 at 10:49:28AM -0700, Shakeel Butt wrote: > For non-PREEMPT_RT kernels, drain_obj_stock() is always called with irq > disabled, so we can use __mod_memcg_state() instead of > mod_memcg_state(). For PREEMPT_RT, we need to add memcg_stats_[un]lock > in __mod_memcg_state(). > > Signed-off-by: Shakeel Butt > Reviewed-by: Sebastian Andrzej Siewior > --- > mm/memcontrol.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/mm/memcontrol.c b/mm/memcontrol.c > index 3c4de384b5a0..dfe9c2eb7816 100644 > --- a/mm/memcontrol.c > +++ b/mm/memcontrol.c > @@ -707,10 +707,12 @@ void __mod_memcg_state(struct mem_cgroup *memcg, enum memcg_stat_item idx, > if (WARN_ONCE(BAD_STAT_IDX(i), "%s: missing stat item %d\n", __func__, idx)) > return; > > + memcg_stats_lock(); > __this_cpu_add(memcg->vmstats_percpu->state[i], val); > val = memcg_state_val_in_pages(idx, val); > memcg_rstat_updated(memcg, val); > trace_mod_memcg_state(memcg, idx, val); > + memcg_stats_unlock(); > } > > #ifdef CONFIG_MEMCG_V1 > @@ -2845,7 +2847,7 @@ static void drain_obj_stock(struct memcg_stock_pcp *stock) VM_WARN_ON_IRQS_ENABLED() ? Reviewed-by: Roman Gushchin