From: Cyrill Gorcunov <gorcunov@gmail.com>
To: Colin Cross <ccross@google.com>
Cc: "Sumit Semwal" <sumit.semwal@linaro.org>,
"Andrew Morton" <akpm@linux-foundation.org>,
Linux-MM <linux-mm@kvack.org>,
lkml <linux-kernel@vger.kernel.org>,
"Alexey Dobriyan" <adobriyan@gmail.com>,
"Jonathan Corbet" <corbet@lwn.net>,
"Mauro Carvalho Chehab" <mchehab+huawei@kernel.org>,
"Kees Cook" <keescook@chromium.org>,
"Michal Hocko" <mhocko@suse.com>,
"Alexey Gladkov" <gladkov.alexey@gmail.com>,
"Matthew Wilcox" <willy@infradead.org>,
"Jason Gunthorpe" <jgg@ziepe.ca>,
"Kirill A . Shutemov" <kirill.shutemov@linux.intel.com>,
"Michel Lespinasse" <walken@google.com>,
"Michal Koutný" <mkoutny@suse.com>,
"Song Liu" <songliubraving@fb.com>,
"Huang Ying" <ying.huang@intel.com>,
"Vlastimil Babka" <vbabka@suse.cz>,
"Yang Shi" <yang.shi@linux.alibaba.com>,
chenqiwu <chenqiwu@xiaomi.com>,
"Mathieu Desnoyers" <mathieu.desnoyers@efficios.com>,
"John Hubbard" <jhubbard@nvidia.com>,
"Thomas Hellstrom" <thellstrom@vmware.com>,
"Mike Christie" <mchristi@redhat.com>,
"Bart Van Assche" <bvanassche@acm.org>,
"Amit Pundir" <amit.pundir@linaro.org>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Christian Brauner" <christian.brauner@ubuntu.com>,
"Daniel Jordan" <daniel.m.jordan@oracle.com>,
"Adrian Reber" <areber@redhat.com>,
"Nicolas Viennot" <Nicolas.Viennot@twosigma.com>,
"Al Viro" <viro@zeniv.linux.org.uk>,
"Thomas Cedeno" <thomascedeno@google.com>,
linux-fsdevel@vger.kernel.org,
"Pekka Enberg" <penberg@kernel.org>,
"Dave Hansen" <dave.hansen@intel.com>,
"Peter Zijlstra" <peterz@infradead.org>,
"Ingo Molnar" <mingo@kernel.org>,
"Oleg Nesterov" <oleg@redhat.com>,
"Eric W. Biederman" <ebiederm@xmission.com>,
"Jan Glauber" <jan.glauber@gmail.com>,
"John Stultz" <john.stultz@linaro.org>,
"Rob Landley" <rob@landley.net>,
"Serge E. Hallyn" <serge.hallyn@ubuntu.com>,
"David Rientjes" <rientjes@google.com>,
"Hugh Dickins" <hughd@google.com>,
"Rik van Riel" <riel@redhat.com>, "Mel Gorman" <mgorman@suse.de>,
"Tang Chen" <tangchen@cn.fujitsu.com>,
"Robin Holt" <holt@sgi.com>, "Shaohua Li" <shli@fusionio.com>,
"Sasha Levin" <sasha.levin@oracle.com>,
"Johannes Weiner" <hannes@cmpxchg.org>,
"Minchan Kim" <minchan@kernel.org>
Subject: Re: [PATCH v5 2/2] mm: add a field to store names for private anonymous memory
Date: Fri, 21 Aug 2020 10:05:52 +0300 [thread overview]
Message-ID: <20200821070552.GW2074@grain> (raw)
In-Reply-To: <CAMbhsRQJ5Sw2x19HJzesvjDO_QaW2p8=KQ1tKghEQ67UZ=seSw@mail.gmail.com>
On Thu, Aug 20, 2020 at 04:51:57PM -0700, Colin Cross wrote:
> >
> > Yes, been in this part of code too long ago, managed to forget. You know
> > I'm wondering do we really need a human readable names here? Maybe it would
> > be more convenient to keep say u64 number instead? This would eliminate
> > need to access VM at all. From user space point of view there should be
> > no difference how to recognize such VMAs (by name or by some ID). Or there
> > some need for string solely?
>
> Numbers instead of strings would require some central registry to
> decode them, which would make it much harder to use. You can see some
This is not anyhow different from number constants. You simply need a
central registry of strings.
enum anon_codes {
atexit_handlers = 1,
linker_alloc = 2,
...
};
ed432000-ed433000 r--p 00000000 00:00 0 [anon:1]
ed442000-ed4a6000 r--p 00000000 00:00 0 [anon:2]
...
the thing is that the string constants have no meaning outside of the
user space application which use it. Moreover a user (while would read
it via procfs) must have no assumption about their name meaning at all.
> examples of how Android uses it at https://pastebin.com/BQZ1vZnJ for
> the cat proces and https://pastebin.com/YNUTvZyz for an ART process.
> We label individual stacks with their TIDs (useful since the stack TID
> annotation was reverted in 65376df582174ffcec9e6471bf5b0dd79ba05e4a),
> the various heaps created by different allocators, and much more. The
> data is consumed manually for debugging, as well as by various memory
> stats collection and analysis tools.
Aha, thanks! I see the labeling. So baically the benefit of string
constants is the following:
- they are human readable
- they are 255 bytes long (for now)
While downsides are:
- a way more longer procfs output
I don't have some strong opinion here. Still thanks a huge for examples.
next prev parent reply other threads:[~2020-08-21 7:05 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-19 14:16 [PATCH v5 0/2] Anonymous VMA naming patches Sumit Semwal
2020-08-19 14:16 ` [PATCH v5 1/2] mm: rearrange madvise code to allow for reuse Sumit Semwal
2020-08-19 14:16 ` [PATCH v5 2/2] mm: add a field to store names for private anonymous memory Sumit Semwal
2020-08-19 14:37 ` Michal Hocko
2020-08-19 15:02 ` Matthew Wilcox
2020-08-19 17:48 ` Sumit Semwal
2020-08-20 15:46 ` Oleg Nesterov
2020-08-19 17:14 ` kernel test robot
2020-08-19 17:14 ` kernel test robot
2020-08-19 17:42 ` kernel test robot
2020-08-19 17:42 ` kernel test robot
2020-08-20 7:58 ` Michal Hocko
2020-08-20 23:28 ` Colin Cross
2020-08-21 3:21 ` Sumit Semwal
2020-08-21 7:24 ` Michal Hocko
2020-08-21 7:53 ` Michal Hocko
2020-08-21 8:02 ` Sumit Semwal
2020-08-20 16:00 ` Oleg Nesterov
2020-08-20 21:15 ` Kees Cook
2020-08-21 3:15 ` Sumit Semwal
2020-08-21 3:14 ` Sumit Semwal
2020-08-20 21:40 ` Cyrill Gorcunov
2020-08-20 21:45 ` Colin Cross
2020-08-20 22:15 ` Cyrill Gorcunov
2020-08-20 23:51 ` Colin Cross
2020-08-21 7:05 ` Cyrill Gorcunov [this message]
2020-08-20 21:45 ` Dave Hansen
2020-08-20 21:59 ` Cyrill Gorcunov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200821070552.GW2074@grain \
--to=gorcunov@gmail.com \
--cc=Nicolas.Viennot@twosigma.com \
--cc=adobriyan@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=amit.pundir@linaro.org \
--cc=areber@redhat.com \
--cc=bvanassche@acm.org \
--cc=ccross@google.com \
--cc=chenqiwu@xiaomi.com \
--cc=christian.brauner@ubuntu.com \
--cc=corbet@lwn.net \
--cc=daniel.m.jordan@oracle.com \
--cc=dave.hansen@intel.com \
--cc=ebiederm@xmission.com \
--cc=gladkov.alexey@gmail.com \
--cc=hannes@cmpxchg.org \
--cc=holt@sgi.com \
--cc=hughd@google.com \
--cc=jan.glauber@gmail.com \
--cc=jgg@ziepe.ca \
--cc=jhubbard@nvidia.com \
--cc=john.stultz@linaro.org \
--cc=keescook@chromium.org \
--cc=kirill.shutemov@linux.intel.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mathieu.desnoyers@efficios.com \
--cc=mchehab+huawei@kernel.org \
--cc=mchristi@redhat.com \
--cc=mgorman@suse.de \
--cc=mhocko@suse.com \
--cc=minchan@kernel.org \
--cc=mingo@kernel.org \
--cc=mkoutny@suse.com \
--cc=oleg@redhat.com \
--cc=penberg@kernel.org \
--cc=peterz@infradead.org \
--cc=riel@redhat.com \
--cc=rientjes@google.com \
--cc=rob@landley.net \
--cc=sasha.levin@oracle.com \
--cc=serge.hallyn@ubuntu.com \
--cc=shli@fusionio.com \
--cc=songliubraving@fb.com \
--cc=sumit.semwal@linaro.org \
--cc=tangchen@cn.fujitsu.com \
--cc=tglx@linutronix.de \
--cc=thellstrom@vmware.com \
--cc=thomascedeno@google.com \
--cc=vbabka@suse.cz \
--cc=viro@zeniv.linux.org.uk \
--cc=walken@google.com \
--cc=willy@infradead.org \
--cc=yang.shi@linux.alibaba.com \
--cc=ying.huang@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.