[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <m14pfgqvk0.fsf@ebiederm.dsl.xmission.com>
Date: Tue, 20 Nov 2007 17:41:35 -0700
From: ebiederm@...ssion.com (Eric W. Biederman)
To: Ulrich Drepper <drepper@...hat.com>
Cc: Roland McGrath <roland@...hat.com>,
Guillaume Chazarain <guichaz@...oo.fr>,
Ingo Molnar <mingo@...e.hu>,
Pavel Emelyanov <xemul@...nvz.org>,
"Rafael J. Wysocki" <rjw@...k.pl>, Pavel Machek <pavel@....cz>,
kernel list <linux-kernel@...r.kernel.org>,
netdev <netdev@...r.kernel.org>
Subject: Re: 2.6.24-rc3: find complains about /proc/net
Ulrich Drepper <drepper@...hat.com> writes:
> Roland McGrath wrote:
>> Oh, it seems it has indeed been that way for a very long time, so I was
>> mistaken. It still seems a little odd to me. Ulrich can say definitively
>> whether the kind of concern I mentioned really matters one way or the other
>> for glibc.
>
> glibc cannot survive (at least NPTL) if somebody uses funny CLONE_*
> flags to separate various pieces of information, e.g., file descriptors.
> So, all the information in each thread's /proc/self should be identical.
Which seems to confirm that glibc and native pthread can't care.
> When the information is not the same, the current semantics seems to be
> more useful. So I guess, no change is the way to go here.
Could you elaborate a bit on how the semantics of returning the
wrong information are more useful?
In particular if a thread does the logical equivalent of:
grep Pid: /proc/self/status. It always get the tgid despite
having a different process id.
How can that possibly be useful or correct?
>From the kernel side I really think the current semantics of /proc/self
in the context of threads is a bug and confusing. All of the kernel
developers first reaction when this was pointed out was that this
is a regression.
If it is truly useful to user space we can preserve this API design
bug forever. I just want to make certain we are not being bug
compatible without a good reason.
Currently we have several kernel side bugs with threaded
programs because /proc/self does not do the intuitive thing. Unless
something has changed recently selinux will cause accesses by a
non-leader thread to fail when accessing files through /proc/self.
So far the more I look at the current /proc/self behavior the
more I am convinced it is broken, and useless. Please help me see
where it is useful, so we can justify keeping it.
Thanks,
Eric
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists