From: "Albert Cahalan" <acahalan@gmail.com>
To: "Guillaume Chazarain" <guichaz@yahoo.fr>
Cc: akpm@linux-foundation.org, mm-commits@vger.kernel.org,
ebiederm@xmission.com, mingo@elte.hu, oleg@tv-sign.ru,
rjw@sisk.pl, roland@redhat.com, xemul@openvz.org,
linux-kernel <linux-kernel@vger.kernel.org>
Subject: Re: + proc-fix-the-threaded-proc-self.patch added to -mm tree
Date: Wed, 28 Nov 2007 04:41:43 -0500 [thread overview]
Message-ID: <787b0d920711280141v463759efod86395c50c1b47c5@mail.gmail.com> (raw)
In-Reply-To: <20071128014901.4b303954@inria.fr>
On Nov 27, 2007 7:49 PM, Guillaume Chazarain <guichaz@yahoo.fr> wrote:
> akpm@linux-foundation.org wrote:
>
> > We may be stuck with the current broken behavior for backwards
> > compatibility reasons but lets try fixing our ancient bug for the 2.6.25
> > time frame and see if anyone screams.
It's not broken. It's just not the feature you're looking for.
> I'm not screaming because of this change, but I screamed when I
> discovered I could not have a replacement for gettid() in Java, or any
> other high level environment.
Java is so high-level that it seems inappropriate to touch /proc.
It is allowed for Java to do N:M threading you know.
> So, instead of making /proc/self an unstable interface that changed in
> 2.6.0 and 2.6.25, I'll vote for /proc/self/task/self. A new interface
> that can trivially be detected for existence, and programs relying on
> this interface will loudly break on older kernels, unlike with the
> proposed interface change.
>
> Ccing Albert Cahalan as he made the change to /proc/self in the first
> place:
Changing /proc/self is somewhat risky, and probably
undesirable anyway. That file has always been used
to represent the process; at one time this also meant
the task. Documentation everywhere says "process".
This one is probably best:
/proc/task -> 123/task/456
(with both numbers showing)
The problem with /proc/self/task/self is that it
makes /proc/789/task/self be ill-defined when
the observer is not tgid 789. If the directory can
only show up in the observer's own task directory,
then this solution is good.
I really don't want to see anything that would encourage
more use of the gdb backdoor. For those that don't
remember, gdb broke when access to threads via the
top-level /proc directory was temporarily removed.
We need that back door, unfortunately, but having it
show up in symlink targets is quite nasty.
As for the history:
I left it out. At the time it would have been fairly useless.
Back then, glibc didn't make things painful by pulling
phony thread IDs out of its ass. Shell scripts sure didn't
deal in threads. Monitoring tools like "ps" didn't need it.
If nothing needs it, well, why have it?
Regarding some of the discusison on LKML, I don't see
how unshare matters. If you unshare to the point where
you get a new TGID, then /proc/self must reflect that.
next parent reply other threads:[~2007-11-28 9:41 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <200711262339.lAQNdNrw029057@imap1.linux-foundation.org>
[not found] ` <20071128014901.4b303954@inria.fr>
2007-11-28 9:41 ` Albert Cahalan [this message]
2007-11-28 10:46 ` Ingo Molnar
2007-11-28 11:31 ` Eric W. Biederman
2007-11-28 11:42 ` Eric W. Biederman
2007-11-28 17:47 ` Albert Cahalan
2007-11-29 21:40 ` Eric W. Biederman
2007-11-30 0:10 ` Ingo Molnar
2007-11-30 7:44 ` Albert Cahalan
2007-12-02 4:00 ` Eric W. Biederman
2007-11-28 18:14 ` Albert Cahalan
2007-11-29 12:34 ` Ingo Molnar
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=787b0d920711280141v463759efod86395c50c1b47c5@mail.gmail.com \
--to=acahalan@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=ebiederm@xmission.com \
--cc=guichaz@yahoo.fr \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=mm-commits@vger.kernel.org \
--cc=oleg@tv-sign.ru \
--cc=rjw@sisk.pl \
--cc=roland@redhat.com \
--cc=xemul@openvz.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®