public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Albert Cahalan <acahalan@gmail.com>
Cc: Guillaume Chazarain <guichaz@yahoo.fr>,
	akpm@linux-foundation.org, mm-commits@vger.kernel.org,
	ebiederm@xmission.com, oleg@tv-sign.ru, rjw@sisk.pl,
	roland@redhat.com, xemul@openvz.org,
	linux-kernel <linux-kernel@vger.kernel.org>,
	Ulrich Drepper <drepper@redhat.com>
Subject: Re: + proc-fix-the-threaded-proc-self.patch added to -mm tree
Date: Wed, 28 Nov 2007 11:46:22 +0100	[thread overview]
Message-ID: <20071128104622.GB19694@elte.hu> (raw)
In-Reply-To: <787b0d920711280141v463759efod86395c50c1b47c5@mail.gmail.com>


* Albert Cahalan <acahalan@gmail.com> wrote:

> 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.

well it's quite broken at the moment and we are looking for solutions 
not for a blame game :-) You might have read the thread where i describe 
what i had to go through to do something fairly trivial.

> > 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".

in Linux we never truly had a notion of "process" when your change was 
done - "process" always meant the task itself. That's why all the 
task_struct parameters/variables used to be named 'p', not 't'. So when 
NTPL came around this became a poorly defined notion.

> This one is probably best:
> /proc/task -> 123/task/456
> (with both numbers showing)

this sounds good to me. If it's a symlink then there's not much other 
choice because the thread PIDs do not even show up under /proc anymore.

> 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.

agreed.

> 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?

sound, future-proof API design, with a little bit of foresight? I am 
faced with incidents on an almost daily basis that show how much we 
kernel folks suck at defining new APIs. The only luck is that the set of 
system calls is fairly complete already - but in the rare case where we 
touch an API it's a catastrophy most of the time. With such an API track 
record we'd probably never survive as a user-space project.

	Ingo

  reply	other threads:[~2007-11-28 10:47 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   ` + proc-fix-the-threaded-proc-self.patch added to -mm tree Albert Cahalan
2007-11-28 10:46     ` Ingo Molnar [this message]
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=20071128104622.GB19694@elte.hu \
    --to=mingo@elte.hu \
    --cc=acahalan@gmail.com \
    --cc=akpm@linux-foundation.org \
    --cc=drepper@redhat.com \
    --cc=ebiederm@xmission.com \
    --cc=guichaz@yahoo.fr \
    --cc=linux-kernel@vger.kernel.org \
    --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