Thread (1 message) 1 message, 1 author, 2014-07-07

/proc/net/ symlink interacts badly with threads (Re: Procfs race condition bug)

From: One Thousand Gnomes <hidden>
Date: 2014-07-07 13:42:07
Also in: lkml

On Fri, 4 Jul 2014 11:13:11 +0100
Mike Cardwell [off-list ref] wrote:
I originally posted this two years ago (*) but received no response. I
just had a look and the problem still exists on the 3.14 kernel I am
currently running.

I *think* I've uncovered a race condition bug in procfs. If I attempt to
I don't think you have found a race condition.

/proc/net/tcp is a symbolic link to /proc/self/net/tcp

Your thread does an open of /proc/net/tcp, which is a symlink
to /proc/self/net/tcp. If your thread id matches your process id then all
will be as you expect, if not then all will be pear shaped.

As far as I can see the code is doing precisely what it should do. It's
just that the use of the symlink when namespaces were added produces some
rather odd effects. 

It's certainly a bug. It used to work, it's sensible it should work.

Added netdev

Alan
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help