Messages in this thread | | | From | (Eric W. Biederman) | Subject | Re: 2.6.24-rc3: find complains about /proc/net | Date | Tue, 20 Nov 2007 17:41:35 -0700 |
| |
Ulrich Drepper <drepper@redhat.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@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |