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 vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A51DDC76196 for ; Mon, 3 Apr 2023 21:24:35 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233712AbjDCVYe (ORCPT ); Mon, 3 Apr 2023 17:24:34 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39592 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233739AbjDCVYJ (ORCPT ); Mon, 3 Apr 2023 17:24:09 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 17FD84ECD for ; Mon, 3 Apr 2023 14:23:45 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id A053A62C40 for ; Mon, 3 Apr 2023 21:23:28 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 01179C433EF; Mon, 3 Apr 2023 21:23:27 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=linux-foundation.org; s=korg; t=1680557008; bh=gtT8dK1ti9yqClXFFMSTTzImghbfPZmJBebz3tdflk0=; h=Date:To:From:Subject:From; b=aTZPNclo8rjFkYD/hXQWWnUdRSEGnavBHzmYw5RUa+CkX7Wl62AHttHBgXHxzBghg iviQdCeWXXEJVSoBX/55KsBoR79PhhOaFuDSwEISKtabWmkXcIOVXNoxr5Dcg481hj U5b9u7uuQIO21khppBR71qP2zgZeg7AL+oVxRm3U= Date: Mon, 03 Apr 2023 14:23:27 -0700 To: mm-commits@vger.kernel.org, vasily.averin@linux.dev, tj@kernel.org, shakeelb@google.com, roman.gushchin@linux.dev, muchun.song@linux.dev, mkoutny@suse.com, mhocko@suse.com, mhocko@kernel.org, lizefan.x@bytedance.com, josef@toxicpanda.com, hannes@cmpxchg.org, axboe@kernel.dk, yosryahmed@google.com, akpm@linux-foundation.org From: Andrew Morton Subject: + memcg-do-not-modify-rstat-tree-for-zero-updates.patch added to mm-unstable branch Message-Id: <20230403212328.01179C433EF@smtp.kernel.org> Precedence: bulk Reply-To: linux-kernel@vger.kernel.org List-ID: X-Mailing-List: mm-commits@vger.kernel.org The patch titled Subject: memcg: do not modify rstat tree for zero updates has been added to the -mm mm-unstable branch. Its filename is memcg-do-not-modify-rstat-tree-for-zero-updates.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/memcg-do-not-modify-rstat-tree-for-zero-updates.patch This patch will later appear in the mm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Yosry Ahmed Subject: memcg: do not modify rstat tree for zero updates Date: Thu, 30 Mar 2023 19:18:01 +0000 In some situations, we may end up calling memcg_rstat_updated() with a value of 0, which means the stat was not actually updated. An example is if we fail to reclaim any pages in shrink_folio_list(). Do not add the cgroup to the rstat updated tree in this case, to avoid unnecessarily flushing it. Link: https://lkml.kernel.org/r/20230330191801.1967435-9-yosryahmed@google.com Signed-off-by: Yosry Ahmed Acked-by: Shakeel Butt Acked-by: Johannes Weiner Acked-by: Michal Hocko Cc: Jens Axboe Cc: Josef Bacik Cc: Michal Hocko Cc: Michal Koutný Cc: Muchun Song Cc: Roman Gushchin Cc: Tejun Heo Cc: Vasily Averin Cc: Zefan Li Signed-off-by: Andrew Morton --- mm/memcontrol.c | 3 +++ 1 file changed, 3 insertions(+) --- a/mm/memcontrol.c~memcg-do-not-modify-rstat-tree-for-zero-updates +++ a/mm/memcontrol.c @@ -619,6 +619,9 @@ static inline void memcg_rstat_updated(s { unsigned int x; + if (!val) + return; + cgroup_rstat_updated(memcg->css.cgroup, smp_processor_id()); x = __this_cpu_add_return(stats_updates, abs(val)); _ Patches currently in -mm which might be from yosryahmed@google.com are cgroup-rename-cgroup_rstat_flush_irqsafe-to-atomic.patch memcg-rename-mem_cgroup_flush_stats_delayed-to-ratelimited.patch memcg-do-not-flush-stats-in-irq-context.patch memcg-replace-stats_flush_lock-with-an-atomic.patch memcg-sleep-during-flushing-stats-in-safe-contexts.patch workingset-memcg-sleep-when-flushing-stats-in-workingset_refault.patch vmscan-memcg-sleep-when-flushing-stats-during-reclaim.patch memcg-do-not-modify-rstat-tree-for-zero-updates.patch