All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jann Horn <jann@thejh.net>
To: Michal Hocko <mhocko@kernel.org>
Cc: Sonny Rao <sonnyrao@chromium.org>,
	Jonathan Corbet <corbet@lwn.net>,
	Andrew Morton <akpm@linux-foundation.org>,
	Vlastimil Babka <vbabka@suse.cz>, Hugh Dickins <hughd@google.com>,
	Konstantin Khlebnikov <koct9i@gmail.com>,
	Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>,
	"Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	John Stultz <john.stultz@linaro.org>,
	Minchan Kim <minchan@kernel.org>,
	ross.zwisler@linux.intel.com, jmarchan@redhat.com,
	Johannes Weiner <hannes@cmpxchg.org>,
	Kees Cook <keescook@chromium.org>,
	oleg@redhat.com, Al Viro <viro@zeniv.linux.org.uk>,
	Mateusz Guzik <mguzik@redhat.com>,
	Janis Danisevskis <jdanis@google.com>,
	calvinowens@fb.com, Alexey Dobriyan <adobriyan@gmail.com>,
	ebiederm@xmission.com, Seth Forshee <seth.forshee@canonical.com>,
	Djalal Harouni <tixxdz@gmail.com>,
	linux-doc@vger.kernel.org,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Ben Zhang <benzh@chromium.org>, Bryan Freed <bfreed@chromium.org>,
	Filipe Brandenburger <filbranden@chromium.org>,
	Jann Horn <jann@thejh.net>,
	linux-api@vger.kernel.org,
	Jacek Anaszewski <j.anaszewski@samsung.com>
Subject: Re: [PATCH v5 0/3] mm, proc: Implement /proc/<pid>/totmaps
Date: Mon, 19 Sep 2016 21:56:20 +0200	[thread overview]
Message-ID: <20160919195619.GF2903@pc.thejh.net> (raw)
In-Reply-To: <20160919195109.GB28639@dhcp22.suse.cz>

[-- Attachment #1: Type: text/plain, Size: 2419 bytes --]

On Mon, Sep 19, 2016 at 09:51:13PM +0200, Michal Hocko wrote:
> [not sure why the CC list was trimmed - do no do that please unless you
>  have a strong reason for that - if this was not intentional please
>  restpre it]

Ah, sorry, pressed the wrong key.


> On Mon 19-09-16 21:40:01, Jann Horn wrote:
> > On Mon, Sep 19, 2016 at 09:32:38PM +0200, Michal Hocko wrote:
> > > On Mon 19-09-16 11:16:31, Robert Foss wrote:
> > > > On 2016-09-14 05:12 AM, Michal Hocko wrote:
> > > > > On Tue 13-09-16 13:27:39, Sonny Rao wrote:
> > > [...]
> > > > > > Given that smaps
> > > > > > doesn't provide this in a straightforward way, what do you think is
> > > > > > the right way to provide this information?
> > > > > 
> > > > > I would be tempted to sneak it into /proc/<pid>/statm because that looks
> > > > > like a proper place but getting this information is not for free
> > > > > performance wise so I am not really sure something that relies on this
> > > > > file would see unexpected stalls. Maybe this could be worked around by
> > > > > some caching... I would suggest to check who is actually using this file
> > > > > (top/ps etc...)
> > > > 
> > > > What would this caching look like? Can any information be re-used between
> > > > vma walks?
> > > 
> > > yes basically return the same value if called within HZ or something
> > > similar. But that assumes that statm latency really matters and it is
> > > called often enough.
> > 
> > That sounds horrible. If some application decides that they want to check
> > statm directly after some action or so (like after program startup), this is
> > going to give them a very bad time. That probably doesn't happen
> > often - but still.
> > 
> > I can already imagine some developer going "yeah, that usleep()... that's
> > because the kernel API returns stale information for a couple milliseconds
> > after we do something *shrug*".
> > 
> > What are you trying to optimize for? Ten users on the same machine, each of
> > which is running "top" because it looks so great?
> 
> Please try to read what I wrote again. I didn't say this would be
> needed. The idea was that _if_ /proc/<pid>/statm is used very _often_
> than some caching might help to reduce the overhead. Especially when you
> consider that the information is not precise anyway. It can change
> anytime while you are doing the address space walk.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: Jann Horn <jann@thejh.net>
To: Michal Hocko <mhocko@kernel.org>
Cc: Sonny Rao <sonnyrao@chromium.org>,
	Jonathan Corbet <corbet@lwn.net>,
	Andrew Morton <akpm@linux-foundation.org>,
	Vlastimil Babka <vbabka@suse.cz>, Hugh Dickins <hughd@google.com>,
	Konstantin Khlebnikov <koct9i@gmail.com>,
	Naoya Horiguchi <n-horiguchi@ah.jp.nec.com>,
	"Kirill A. Shutemov" <kirill.shutemov@linux.intel.com>,
	John Stultz <john.stultz@linaro.org>,
	Minchan Kim <minchan@kernel.org>,
	ross.zwisler@linux.intel.com, jmarchan@redhat.com,
	Johannes Weiner <hannes@cmpxchg.org>,
	Kees Cook <keescook@chromium.org>,
	oleg@redhat.com, Al Viro <viro@zeniv.linux.org.uk>,
	Mateusz Guzik <mguzik@redhat.com>,
	Janis Danisevskis <jdanis@google.com>,
	calvinowens@fb.com, Alexey Dobriyan <adobriyan@gmail.com>,
	ebiederm@xmission.com, Seth Forshee <seth.forshee@canonical.com>
Subject: Re: [PATCH v5 0/3] mm, proc: Implement /proc/<pid>/totmaps
Date: Mon, 19 Sep 2016 21:56:20 +0200	[thread overview]
Message-ID: <20160919195619.GF2903@pc.thejh.net> (raw)
In-Reply-To: <20160919195109.GB28639@dhcp22.suse.cz>

[-- Attachment #1: Type: text/plain, Size: 2419 bytes --]

On Mon, Sep 19, 2016 at 09:51:13PM +0200, Michal Hocko wrote:
> [not sure why the CC list was trimmed - do no do that please unless you
>  have a strong reason for that - if this was not intentional please
>  restpre it]

Ah, sorry, pressed the wrong key.


> On Mon 19-09-16 21:40:01, Jann Horn wrote:
> > On Mon, Sep 19, 2016 at 09:32:38PM +0200, Michal Hocko wrote:
> > > On Mon 19-09-16 11:16:31, Robert Foss wrote:
> > > > On 2016-09-14 05:12 AM, Michal Hocko wrote:
> > > > > On Tue 13-09-16 13:27:39, Sonny Rao wrote:
> > > [...]
> > > > > > Given that smaps
> > > > > > doesn't provide this in a straightforward way, what do you think is
> > > > > > the right way to provide this information?
> > > > > 
> > > > > I would be tempted to sneak it into /proc/<pid>/statm because that looks
> > > > > like a proper place but getting this information is not for free
> > > > > performance wise so I am not really sure something that relies on this
> > > > > file would see unexpected stalls. Maybe this could be worked around by
> > > > > some caching... I would suggest to check who is actually using this file
> > > > > (top/ps etc...)
> > > > 
> > > > What would this caching look like? Can any information be re-used between
> > > > vma walks?
> > > 
> > > yes basically return the same value if called within HZ or something
> > > similar. But that assumes that statm latency really matters and it is
> > > called often enough.
> > 
> > That sounds horrible. If some application decides that they want to check
> > statm directly after some action or so (like after program startup), this is
> > going to give them a very bad time. That probably doesn't happen
> > often - but still.
> > 
> > I can already imagine some developer going "yeah, that usleep()... that's
> > because the kernel API returns stale information for a couple milliseconds
> > after we do something *shrug*".
> > 
> > What are you trying to optimize for? Ten users on the same machine, each of
> > which is running "top" because it looks so great?
> 
> Please try to read what I wrote again. I didn't say this would be
> needed. The idea was that _if_ /proc/<pid>/statm is used very _often_
> than some caching might help to reduce the overhead. Especially when you
> consider that the information is not precise anyway. It can change
> anytime while you are doing the address space walk.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]

  parent reply	other threads:[~2016-09-19 19:56 UTC|newest]

Thread overview: 43+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-05 20:14 [PATCH v5 0/3] mm, proc: Implement /proc/<pid>/totmaps robert.foss
2016-09-05 20:14 ` robert.foss
2016-09-05 20:14 ` [PATCH v5 1/3] " robert.foss
2016-09-05 20:14   ` robert.foss
2016-09-07 12:58   ` Oleg Nesterov
2016-09-07 12:58     ` Oleg Nesterov
2016-09-12 22:12     ` Robert Foss
2016-09-12 22:12       ` Robert Foss
2016-09-05 20:14 ` [PATCH v5 2/3] Documentation/filesystems: Fixed typo robert.foss
2016-09-05 20:14   ` robert.foss-ZGY8ohtN/8qB+jHODAdFcQ
2016-09-07 23:22   ` Kees Cook
2016-09-07 23:22     ` Kees Cook
2016-09-08  0:22     ` Robert Foss
2016-09-08  0:22       ` Robert Foss
2016-09-08  6:23       ` Jonathan Corbet
2016-09-08  6:23         ` Jonathan Corbet
2016-09-05 20:14 ` [PATCH v5 3/3] Documentation/filesystems: Added /proc/PID/totmaps documentation robert.foss
2016-09-05 20:14   ` robert.foss
2016-09-12 12:02 ` [PATCH v5 0/3] mm, proc: Implement /proc/<pid>/totmaps Michal Hocko
2016-09-12 15:31   ` Sonny Rao
2016-09-12 15:31     ` Sonny Rao
2016-09-12 17:15     ` Michal Hocko
2016-09-12 17:15       ` Michal Hocko
2016-09-12 17:28       ` Sonny Rao
2016-09-12 17:28         ` Sonny Rao
2016-09-13  7:12         ` Michal Hocko
2016-09-13  7:12           ` Michal Hocko
2016-09-13 20:27           ` Sonny Rao
2016-09-13 20:27             ` Sonny Rao
2016-09-14  9:12             ` Michal Hocko
2016-09-14  9:12               ` Michal Hocko
2016-09-19 15:16               ` Robert Foss
2016-09-19 15:16                 ` Robert Foss
2016-09-19 19:32                 ` Michal Hocko
2016-09-19 19:32                   ` Michal Hocko
     [not found]                   ` <20160919194001.GE2903@pc.thejh.net>
     [not found]                     ` <20160919195109.GB28639@dhcp22.suse.cz>
2016-09-19 19:56                       ` Jann Horn [this message]
2016-09-19 19:56                         ` Jann Horn
2016-09-19 20:15                         ` Sonny Rao
2016-09-19 20:15                           ` Sonny Rao
2016-09-20  0:27                   ` Robert Foss
2016-09-20  0:27                     ` Robert Foss
2016-09-20  0:29                     ` Sonny Rao
2016-09-20  0:29                       ` Sonny Rao

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=20160919195619.GF2903@pc.thejh.net \
    --to=jann@thejh.net \
    --cc=adobriyan@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=benzh@chromium.org \
    --cc=bfreed@chromium.org \
    --cc=calvinowens@fb.com \
    --cc=corbet@lwn.net \
    --cc=ebiederm@xmission.com \
    --cc=filbranden@chromium.org \
    --cc=hannes@cmpxchg.org \
    --cc=hughd@google.com \
    --cc=j.anaszewski@samsung.com \
    --cc=jdanis@google.com \
    --cc=jmarchan@redhat.com \
    --cc=john.stultz@linaro.org \
    --cc=keescook@chromium.org \
    --cc=kirill.shutemov@linux.intel.com \
    --cc=koct9i@gmail.com \
    --cc=linux-api@vger.kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mguzik@redhat.com \
    --cc=mhocko@kernel.org \
    --cc=minchan@kernel.org \
    --cc=n-horiguchi@ah.jp.nec.com \
    --cc=oleg@redhat.com \
    --cc=ross.zwisler@linux.intel.com \
    --cc=seth.forshee@canonical.com \
    --cc=sonnyrao@chromium.org \
    --cc=tixxdz@gmail.com \
    --cc=vbabka@suse.cz \
    --cc=viro@zeniv.linux.org.uk \
    /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.