Messages in this thread | | | Date | Thu, 06 Mar 2008 11:40:02 +0300 | From | Pavel Emelyanov <> | Subject | Re: [PATCH] Make /proc/net a symlink on /proc/self/net |
| |
Eric W. Biederman wrote: > Pavel Emelyanov <xemul@openvz.org> writes: > >> Current /proc/net is done with so called "shadows", but current >> implementation is broken and has little chances to get fixed. >> >> The problem is that dentries subtree of /proc/net directory has >> fancy revalidation rules to make processes living in different >> net namespaces see different entries in /proc/net subtree, but >> currently, tasks see in the /proc/net subdir the contents of any >> other namespace, depending on who opened the file first. >> >> The proposed fix is to turn /proc/net into a symlink, which points >> to /proc/self/net, which in turn shows what previously was in >> /proc/net - the network-related info, from the net namespace the >> appropriate task lives in. >> >> # ls -l /proc/net >> lrwxrwxrwx 1 root root 8 Mar 5 15:17 /proc/net -> self/net >> >> In other words - this behaves like /proc/mounts, but unlike >> "mounts", "net" is not a file, but a directory. > > Overall this looks good, thanks. > > > As a follow on patch this should be moved from /proc/<pid>/net > into /proc/<pid>/task/<tid>/net.
I knew you would request for it :)
> We don't have anything that currently forces network namespaces to be > the same between different tasks of the same task group (I just > looked), nor do we have a technical reason to require that. > > So we should fix our infrastructure to include the companion of > /proc/self, a /proc/current (which points at the current task) > after which it should be about a two line change to move this > from the tgid to the task directory.
This is right what I intended to tell you when you would propose to tune the /proc/net link. I'm glad hearing, that you already agree with that.
> Eric >
| |