Received: by 2002:a05:6a10:1a4d:0:0:0:0 with SMTP id nk13csp618794pxb; Tue, 1 Feb 2022 07:07:15 -0800 (PST) X-Google-Smtp-Source: ABdhPJzjqroWlTcIV68ht6u6FoNXFX1omKSgAXwJEgFsylXoBno2W5IfAqTAHK3GXmJroPzGDXR2 X-Received: by 2002:a05:6402:11d2:: with SMTP id j18mr25785874edw.349.1643728034989; Tue, 01 Feb 2022 07:07:14 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643728034; cv=none; d=google.com; s=arc-20160816; b=LAY43PCdlpm1Oz1oeFLqzRUGwZKx+TLhSu+zNRotZNKQVyx5eCbtiuDiz5fDTWH0mG URCTWPlgFcn6bCjgXrrSHMboYZ/uVqNoCar+7IIT2t+dSKnRetpP3f4Z0cIhx6T4DA+D 0ldTcD6IoWDbjtls1Cbttsy5m1dBk8uYalnzlIwehW5X4JHxtIf61/6b8gyV60573CCS 7OYO6pq3CGDLk/j0pw7C/SUCIkX1uPbDsA2ipWGWryV5Zxkm09ozInzhXF0i3AwP9X6N FeaWWxbLro/RR2iZV7TQC/KYn8mH/5yl9vPidHkWPuWIJJg2/r7Gwj9ICghIU0Hj1WaW G0ng== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:references:message-id:in-reply-to :subject:cc:to:from:date:dkim-signature; bh=h/cECQtg8Pw42Cg8cQsPRdyEcNVz1JX9ppZ0jmJVNMk=; b=QSvpwZ92Z+vFTzBTWASkLpsQl6QOVablLkBlSamzvuLu3UKqOBbZv5X2znyv9ATMQT 5Hy3TWunCXnqMrovPbm1ls0IRqPssIMTzEEEwy0kvwrjzbV8673jMDRiqZQs5pwavAvr ZRK2EYWd/NucsEqvJotn7dEn9hzjTp+OQxJxtrYa0LYyk7lbX8mOutczJeLsmgI9Ylfn ac8/fykG39NeaZuM8l8sntEQutCtOsxToQlqqGwdEtvAFJDVtsxWRlhmHO1nHVdduMJN bjxOobYr5us4a15b+Ecszqs1OguC51yyXJvgLgxgeGQy4BhVe0cd+S6BCsD4++8fWRcg IakA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=EHTJS8+k; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id qb1si7855933ejc.667.2022.02.01.07.06.48; Tue, 01 Feb 2022 07:07:14 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=EHTJS8+k; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1347652AbiA3UvD (ORCPT + 99 others); Sun, 30 Jan 2022 15:51:03 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54272 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1356209AbiA3UvB (ORCPT ); Sun, 30 Jan 2022 15:51:01 -0500 Received: from mail-pg1-x535.google.com (mail-pg1-x535.google.com [IPv6:2607:f8b0:4864:20::535]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9D0C5C06173B for ; Sun, 30 Jan 2022 12:51:01 -0800 (PST) Received: by mail-pg1-x535.google.com with SMTP id f8so10325147pgf.8 for ; Sun, 30 Jan 2022 12:51:01 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=date:from:to:cc:subject:in-reply-to:message-id:references :mime-version; bh=h/cECQtg8Pw42Cg8cQsPRdyEcNVz1JX9ppZ0jmJVNMk=; b=EHTJS8+k2oaZV3vVFaJi4iJnm0zTSudXRujif1Kg4Tp24zztawm4YKkJNwtJ7gfazF 5K+1rmI0TVvt0DGZ6YBUEIG12v8eHqBV1UsbO/LzbaLa0eM39ts+ZyGBl34z5d5QgniJ 1hpersz5zRY4G+y4q2ekP/+rdom2g3zfRXtMgj/RM2b37DddUCoONkB5e6GM8zQl0BOV DBCqtTfm0eQnE9ZOasZIqc/u30BO5tZzfiNBs4PyK0h2pzdnv2ptr4d7tKwa+t1q/p6W msJ1N0brQOFLJF6BoGEzsZwT1Kz6peBfXtDcoDEqFr20lzOI5N330P5Zsq1VrDex68Tf I2UQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:date:from:to:cc:subject:in-reply-to:message-id :references:mime-version; bh=h/cECQtg8Pw42Cg8cQsPRdyEcNVz1JX9ppZ0jmJVNMk=; b=O9MpljHtyAwmeo8Ox5vekQ+aSIG2129yCvcxySPG1aH1SeOzu/YUKGhFvZJchcRAFW j7Uvna4wxBuxz7ZtbO1ng9LfI2Xb1TQ66xJhH7ReyOSkkP2EDgtfqJb5utzp0V/Wm09K EJUUrnl11ZS0WKAnKleRU7qmOPajzcPAO55SyPa1rfDP2g3XP3YbzfbUZzyFIo+5dWx3 LSyYoM11SZrIWz9WlvXdt8wSt+m/E+Ca1xye+qJENNlKPFlCPnYEv35evr0guSJavxpi AkWJafw5bfpIxv7llbNLa2jEo9MVCQVFW+KdyiqAJ3d1CmqyrJGp25fS1tgiNjjif0d9 0Zrg== X-Gm-Message-State: AOAM533uQU15NjCSVs9YlowWTtw/tdhRXFzWXojMcJ+u4cY2aPmMb8fr FDgkmiIzoPnLZACpiDepCqfezg== X-Received: by 2002:a05:6a00:2490:: with SMTP id c16mr17989852pfv.36.1643575860942; Sun, 30 Jan 2022 12:51:00 -0800 (PST) Received: from [2620:15c:29:204:2b97:ce13:593d:973d] ([2620:15c:29:204:2b97:ce13:593d:973d]) by smtp.gmail.com with ESMTPSA id q2sm873311pfj.94.2022.01.30.12.51.00 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 30 Jan 2022 12:51:00 -0800 (PST) Date: Sun, 30 Jan 2022 12:51:00 -0800 (PST) From: David Rientjes To: Waiman Long cc: Mike Rapoport , Johannes Weiner , Michal Hocko , Vladimir Davydov , Andrew Morton , Petr Mladek , Steven Rostedt , Sergey Senozhatsky , Andy Shevchenko , Rasmus Villemoes , linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, linux-mm@kvack.org, Ira Weiny , Rafael Aquini Subject: Re: [PATCH v2 3/3] mm/page_owner: Dump memcg information In-Reply-To: <82c99093-e44b-7fac-14ab-9e8392d107ea@redhat.com> Message-ID: <973ec252-5297-ef24-411-31f24b353fb3@google.com> References: <20220129205315.478628-1-longman@redhat.com> <20220129205315.478628-4-longman@redhat.com> <82c99093-e44b-7fac-14ab-9e8392d107ea@redhat.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Sun, 30 Jan 2022, Waiman Long wrote: > On 1/30/22 01:33, Mike Rapoport wrote: > > On Sat, Jan 29, 2022 at 03:53:15PM -0500, Waiman Long wrote: > > > It was found that a number of offlined memcgs were not freed because > > > they were pinned by some charged pages that were present. Even "echo > > > 1 > /proc/sys/vm/drop_caches" wasn't able to free those pages. These > > > offlined but not freed memcgs tend to increase in number over time with > > > the side effect that percpu memory consumption as shown in /proc/meminfo > > > also increases over time. > > > > > > In order to find out more information about those pages that pin > > > offlined memcgs, the page_owner feature is extended to dump memory > > > cgroup information especially whether the cgroup is offlined or not. > > > > > > Signed-off-by: Waiman Long > > > --- > > > mm/page_owner.c | 31 +++++++++++++++++++++++++++++++ > > > 1 file changed, 31 insertions(+) > > > > > > diff --git a/mm/page_owner.c b/mm/page_owner.c > > > index 28dac73e0542..8dc5cd0fa227 100644 > > > --- a/mm/page_owner.c > > > +++ b/mm/page_owner.c > > > @@ -10,6 +10,7 @@ > > > #include > > > #include > > > #include > > > +#include > > > #include > > > #include "internal.h" > > > @@ -331,6 +332,7 @@ print_page_owner(char __user *buf, size_t count, > > > unsigned long pfn, > > > depot_stack_handle_t handle) > > > { > > > int ret, pageblock_mt, page_mt; > > > + unsigned long __maybe_unused memcg_data; > > > char *kbuf; > > > count = min_t(size_t, count, PAGE_SIZE); > > > @@ -365,6 +367,35 @@ print_page_owner(char __user *buf, size_t count, > > > unsigned long pfn, > > > migrate_reason_names[page_owner->last_migrate_reason]); > > > } > > > +#ifdef CONFIG_MEMCG > > Can we put all this along with the declaration of memcg_data in a helper > > function please? > > > Sure. Will post another version with that change. > That would certainly make it much cleaner. After that's done (and perhaps addressing my nit comment in the first patch), feel free to add Acked-by: David Rientjes to all three patches. Thanks!