summary refs log tree commit diff
path: root/net/core
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2014-11-01 03:13:17 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2014-12-04 14:34:54 -0500
commitf77c80142e1afe6d5c16975ca5d7d1fc324b16f9 (patch)
treec2c8f726402610aee77ccca0627a4c38f944640b /net/core
parent33c429405a2c8d9e42afb9fee88a63cfb2de1e98 (diff)
downloadlinux-f77c80142e1afe6d5c16975ca5d7d1fc324b16f9.tar.gz
bury struct proc_ns in fs/proc
a) make get_proc_ns() return a pointer to struct ns_common
b) mirror ns_ops in dentry->d_fsdata of ns dentries, so that
is_mnt_ns_file() could get away with fewer dereferences.

That way struct proc_ns becomes invisible outside of fs/proc/*.c

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'net/core')
-rw-r--r--net/core/net_namespace.c4
1 files changed, 1 insertions, 3 deletions
diff --git a/net/core/net_namespace.c b/net/core/net_namespace.c
index 4d4acaf7b498..ce780c722e48 100644
--- a/net/core/net_namespace.c
+++ b/net/core/net_namespace.c
@@ -337,7 +337,6 @@ EXPORT_SYMBOL_GPL(__put_net);
 
 struct net *get_net_ns_by_fd(int fd)
 {
-	struct proc_ns *ei;
 	struct file *file;
 	struct ns_common *ns;
 	struct net *net;
@@ -346,8 +345,7 @@ struct net *get_net_ns_by_fd(int fd)
 	if (IS_ERR(file))
 		return ERR_CAST(file);
 
-	ei = get_proc_ns(file_inode(file));
-	ns = ei->ns;
+	ns = get_proc_ns(file_inode(file));
 	if (ns->ops == &netns_operations)
 		net = get_net(container_of(ns, struct net, ns));
 	else