lkml.org 
[lkml]   [2018]   [May]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] proc: restore seekdir("/proc", 256) semantics
On Tue, May 01, 2018 at 03:23:07PM -0700, Andrew Morton wrote:
> On Tue, 24 Apr 2018 00:50:09 +0300 Alexey Dobriyan <adobriyan@gmail.com> wrote:
>
> > Long time ago "/proc/self" was an honest symlink and all not-PID entries
> > were output before /proc/$PID. To not lose /proc/self in readdir output
> > after it became permanently positive dentry it was stuck before /proc/1.
> >
> > One side effect of the change was that the code
> >
> > d = opendir("/proc");
> > seekdir(d, 256);
> >
> > stopped pointing to the first PID for applications that want to skip all
> > the crap.
> >
> > Later "/proc/thread-self" was added in the same way.
> >
> > It looks like ps and top aren't seeking over /proc but are simply
> > skipping over so nobody noticed.
> >
> > Restore old behaviour, make seekdir(254) point to /proc/self and
> > seekdir(255) point to /proc/thread-self.
> >
>
> Gee. Why? That's a pretty weird artifact in the userspace API and if
> we were able to withdraw it without damage then good, let's leave it
> withdrawn?

I checked ps, top and htop, they are not doing seekdir(256).
Apparently userspace devs were unaware of this trick.
I'll remove this before anyone notices.

> I mean, if we're to make this a permanent part of the userspace API
> then it should be documented in the proc(5) manpage and we should have
> something in tools/testing/selftests to detect regressions in the
> interface. Good luck with all that!

\
 
 \ /
  Last update: 2018-05-03 19:14    [W:0.066 / U:0.260 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site