[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3f042edb-3769-afea-17a7-899578cd5c69@redhat.com>
Date: Thu, 3 Feb 2022 14:03:58 -0500
From: Waiman Long <longman@...hat.com>
To: Michal Hocko <mhocko@...e.com>
Cc: Johannes Weiner <hannes@...xchg.org>,
Vladimir Davydov <vdavydov.dev@...il.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Petr Mladek <pmladek@...e.com>,
Steven Rostedt <rostedt@...dmis.org>,
Sergey Senozhatsky <senozhatsky@...omium.org>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Rasmus Villemoes <linux@...musvillemoes.dk>,
linux-kernel@...r.kernel.org, cgroups@...r.kernel.org,
linux-mm@...ck.org, Ira Weiny <ira.weiny@...el.com>,
Mike Rapoport <rppt@...nel.org>,
David Rientjes <rientjes@...gle.com>,
Roman Gushchin <guro@...com>, Rafael Aquini <aquini@...hat.com>
Subject: Re: [PATCH v4 3/4] mm/page_owner: Print memcg information
On 2/3/22 07:46, Michal Hocko wrote:
> On Wed 02-02-22 15:30:35, Waiman Long wrote:
> [...]
>> +#ifdef CONFIG_MEMCG
>> + unsigned long memcg_data;
>> + struct mem_cgroup *memcg;
>> + bool online;
>> + char name[80];
>> +
>> + rcu_read_lock();
>> + memcg_data = READ_ONCE(page->memcg_data);
>> + if (!memcg_data)
>> + goto out_unlock;
>> +
>> + if (memcg_data & MEMCG_DATA_OBJCGS)
>> + ret += scnprintf(kbuf + ret, count - ret,
>> + "Slab cache page\n");
>> +
>> + memcg = page_memcg_check(page);
>> + if (!memcg)
>> + goto out_unlock;
>> +
>> + online = (memcg->css.flags & CSS_ONLINE);
>> + cgroup_name(memcg->css.cgroup, name, sizeof(name));
> Is there any specific reason to use another buffer allocated on the
> stack? Also 80B seems too short to cover NAME_MAX.
>
> Nothing else jumped at me.
I suppose we can print directly into kbuf with cgroup_name(), but using
a separate buffer is easier to read and understand. 79 characters should
be enough for most cgroup names. Some auto-generated names with some
kind of embedded uuids may be longer than that, but the random sequence
of hex digits that may be missing do not convey much information for
identification purpose. We can always increase the buffer length later
if it turns out to be an issue.
Cheers,
Longman
Powered by blists - more mailing lists