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 D8D2FC77B7F for ; Wed, 3 May 2023 18:04:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 45F2D6B007D; Wed, 3 May 2023 14:04:32 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 4112D6B007E; Wed, 3 May 2023 14:04:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2FEFC6B0080; Wed, 3 May 2023 14:04:32 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from mail-yb1-f202.google.com (mail-yb1-f202.google.com [209.85.219.202]) by kanga.kvack.org (Postfix) with ESMTP id 1490A6B007D for ; Wed, 3 May 2023 14:04:32 -0400 (EDT) Received: by mail-yb1-f202.google.com with SMTP id 3f1490d57ef6-b9a7e65b34aso9526493276.0 for ; Wed, 03 May 2023 11:04:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1683137071; x=1685729071; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:from:to:cc:subject:date:message-id:reply-to; bh=WX9b5D7rzQ77/+awqXVJW5yY30EN/bdP/BzW/WEcv4Y=; b=LdwlmBbdlsfaGXWQgwsVRjR/EWY38T58sSfiKFEZbOA4CQgTYko1AoCJO4k625/3iM ViTDM2Preuu2ZBeNcdAkUhvF3+HFiWN1DPHRkfYcbQCRa8+FL1gc7dMkqyZ7isrbDKBD dtkCrQbPmCuYE4+f9eNBZffM1E8qDOeCbWmpdnm35HNjLN9VnrgwgSQhIKpBryY2L8Y/ TsR9+zdxk/w8Wc2tpa1ve9nu6rNHFw6GJTrJhsXXMTpcR9qJvMTPNWF+vrr7KfJZpq13 vmfVBu7L+13cGlpFMLapZMacnXnh+OKaC7iUt/6FX+HbKhzBqql5LWlZF50t57n4ufzG sLww== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1683137071; x=1685729071; h=cc:to:from:subject:message-id:references:mime-version:in-reply-to :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=WX9b5D7rzQ77/+awqXVJW5yY30EN/bdP/BzW/WEcv4Y=; b=W6OXIJGpIYEl8po2NThwsyE+V+SXDIdd3QigYAYEkOM2r5WwbNZV9KOSf1EGCi8EsW rdVlM7EGBMV7bV/1HTCZ2ytrDtclFJtfHjvWQZO3bgoMsX7jJlZCEoYVqJv6z/h66EUU HftlKsA/3NH9FGDY/e/rlNE04utWeiZ2OFRPFEZG6c0zs6U1m1KBYCCD1n/0d/M6jixn XgaCZQtc2psObGPkYFkcwr+CJEgJr5binsoJ1D0BF3z9MtIagsg9c+VwzE+OJV6v+b/X 1nNJVJSBugjrzkyXYe7o5g2ntPWKuyXOCfAZMkx1fxmw1SA6mMWs09rxTNibYutRR8to ElzA== X-Gm-Message-State: AC+VfDwdrgzq+hfehNAj7Ecu+M8jzFpHv4Iormc0tlkpSKu7nQ+LOUDh v6s/0j9f9RqNuNd8+eh6Bz9wspVFUXdyrg== X-Google-Smtp-Source: ACHHUZ75gS2CinsTSMqWseG9Yhdce5hS2/KSVhhbpmN58hBLBR2Mt3rETgJY5dRV7ts5FMoW0EG0L8iwrBcM5w== X-Received: from shakeelb.c.googlers.com ([fda3:e722:ac3:cc00:7f:e700:c0a8:262e]) (user=shakeelb job=sendgmr) by 2002:a25:42c9:0:b0:b98:6352:be16 with SMTP id p192-20020a2542c9000000b00b986352be16mr8678629yba.5.1683137071660; Wed, 03 May 2023 11:04:31 -0700 (PDT) Date: Wed, 3 May 2023 18:04:29 +0000 In-Reply-To: <20230428132406.2540811-3-yosryahmed@google.com> Mime-Version: 1.0 References: <20230428132406.2540811-1-yosryahmed@google.com> <20230428132406.2540811-3-yosryahmed@google.com> Message-ID: <20230503180429.zxgq4h5rc6gonikm@google.com> Subject: Re: [PATCH v2 2/2] memcg: dump memory.stat during cgroup OOM for v1 From: Shakeel Butt To: Yosry Ahmed Cc: Johannes Weiner , Michal Hocko , Roman Gushchin , Andrew Morton , Muchun Song , Sergey Senozhatsky , Steven Rostedt , Petr Mladek , Chris Li , cgroups@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="us-ascii" 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: On Fri, Apr 28, 2023 at 01:24:06PM +0000, Yosry Ahmed wrote: > Commit c8713d0b2312 ("mm: memcontrol: dump memory.stat during cgroup > OOM") made sure we dump all the stats in memory.stat during a cgroup > OOM, but it also introduced a slight behavioral change. The code used to > print the non-hierarchical v1 cgroup stats for the entire cgroup > subtree, now it only prints the v2 cgroup stats for the cgroup under > OOM. > > For cgroup v1 users, this introduces a few problems: > (a) The non-hierarchical stats of the memcg under OOM are no longer > shown. > (b) A couple of v1-only stats (e.g. pgpgin, pgpgout) are no longer > shown. > (c) We show the list of cgroup v2 stats, even in cgroup v1. This list of > stats is not tracked with v1 in mind. While most of the stats seem to be > working on v1, there may be some stats that are not fully or correctly > tracked. > > Although OOM log is not set in stone, we should not change it for no > reason. When upgrading the kernel version to a version including > commit c8713d0b2312 ("mm: memcontrol: dump memory.stat during cgroup > OOM"), these behavioral changes are noticed in cgroup v1. > > The fix is simple. Commit c8713d0b2312 ("mm: memcontrol: dump memory.stat > during cgroup OOM") separated stats formatting from stats display for > v2, to reuse the stats formatting in the OOM logs. Do the same for v1. > > Move the v2 specific formatting from memory_stat_format() to > memcg_stat_format(), add memcg1_stat_format() for v1, and make > memory_stat_format() select between them based on cgroup version. > Since memory_stat_show() now works for both v1 & v2, drop > memcg_stat_show(). > > Signed-off-by: Yosry Ahmed Acked-by: Shakeel Butt