Re: + proc-fix-the-threaded-proc-self.patch added to -mm tree

Eric W. Biederman
2007-11-28T11:34:18Z

Ingo Molnar <mingo@elte.hu> writes:

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

Yes.

In a lot of ways if you access /proc/self and you get back information
that does not correspond to yourself the result is nonsense. Which
is a fairly mighty problem.

I'm still trying to understand which will break user space more,
adding /proc/task or changing /proc/self.

>> 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 name sounds good to me.

I am not certain the two components make sense as we have a possible
permission problem where it is remotely possible that a task will
have permission to access /proc/<tid> but not /proc/<tgid>.

We certainly need to think through that case before making it
to a stable kernel.

The reason I care is that we need to fix /proc/mounts. So once we
have /proc/task we can also have change /proc/mounts to
be a symlink to /proc/task/mounts.

Once we get the /proc/mounts thing sorted out. There are several
other entries in /proc that need to that need to follow in it's wake
as they also become per namespace. /proc/net and /proc/sysvipc for
starters.

Eric